├── .gitignore ├── AirCompressorDataset.rights ├── Aircompressorclassification.prj ├── DeepLearningOverviewForSignals.pdf ├── HelperFiles ├── DownloadData.m ├── OpenCodegenReport.m ├── OpenCodegenReportGenericC.m ├── OpenPart1.m ├── OpenPart2.m ├── OpenPart3.m ├── extractFeatures.m ├── getAirCompressorDataFolder.m ├── reloadDatastore.m └── streamingClassifier.m ├── LICENSE ├── Part01_DataPreparation.mlx ├── Part02_Modeling.mlx ├── Part03_Deployment.mlx ├── README.md ├── SavedData ├── LSTMActivations.mat ├── Metrics.mat ├── TrainedModel.mat ├── TrainingFeatures.mat ├── ValidationFeatures.mat └── ValidationResults.mat ├── Tests └── SmokeTests.m ├── arm_compute ├── AsyncBuffercg.cpp ├── AsyncBuffercg.h ├── AsyncBuffercgHelper.cpp ├── AsyncBuffercgHelper.h ├── DeepLearningNetwork.cpp ├── DeepLearningNetwork.h ├── FFTImplementationCallback.cpp ├── FFTImplementationCallback.h ├── MWACLUtils.cpp ├── MWACLUtils.hpp ├── MWCNNLayerImpl.cpp ├── MWCNNLayerImpl.hpp ├── MWSequenceInputLayer.cpp ├── MWSequenceInputLayer.hpp ├── MWSequenceInputLayerImpl.cpp ├── MWSequenceInputLayerImpl.hpp ├── MWTargetNetworkImpl.cpp ├── MWTargetNetworkImpl.hpp ├── ProcessConstructorArguments.cpp ├── ProcessConstructorArguments.h ├── STFTCG.cpp ├── STFTCG.h ├── STFTSysObj.cpp ├── STFTSysObj.h ├── SystemCore.cpp ├── SystemCore.h ├── SystemProp.cpp ├── SystemProp.h ├── bsxfun.cpp ├── bsxfun.h ├── buildInfo.mat ├── codeInfo.mat ├── codedescriptor.dmr ├── coder_array.h ├── compileInfo.mat ├── examples │ ├── main.cpp │ └── main.h ├── extractFeatures.cpp ├── extractFeatures.h ├── html │ └── report.mldatx ├── interface │ ├── _coder_streamingClassifier_api.h │ ├── _coder_streamingClassifier_info.h │ └── _coder_streamingClassifier_mex.h ├── matlabCodegenHandle.cpp ├── matlabCodegenHandle.h ├── predictAndUpdateState.cpp ├── predictAndUpdateState.h ├── rtGetInf.cpp ├── rtGetInf.h ├── rtGetNaN.cpp ├── rtGetNaN.h ├── rt_nonfinite.cpp ├── rt_nonfinite.h ├── rtwtypes.h ├── setup_msvc.bat ├── spectralCentroid.cpp ├── spectralCentroid.h ├── spectralCrest.cpp ├── spectralCrest.h ├── spectralDecrease.cpp ├── spectralDecrease.h ├── spectralEntropy.cpp ├── spectralEntropy.h ├── spectralFlatness.cpp ├── spectralFlatness.h ├── spectralKurtosis.cpp ├── spectralKurtosis.h ├── spectralRolloffPoint.cpp ├── spectralRolloffPoint.h ├── spectralSkewness.cpp ├── spectralSkewness.h ├── spectralSlope.cpp ├── spectralSlope.h ├── spectralSpread.cpp ├── spectralSpread.h ├── streamingClassifier.cpp ├── streamingClassifier.h ├── streamingClassifier_data.cpp ├── streamingClassifier_data.h ├── streamingClassifier_initialize.cpp ├── streamingClassifier_initialize.h ├── streamingClassifier_ref.rsp ├── streamingClassifier_rtw.bat ├── streamingClassifier_rtw.mk ├── streamingClassifier_rtw.rsp ├── streamingClassifier_rtw_comp.rsp ├── streamingClassifier_rtw_ref.rsp ├── streamingClassifier_rtwutil.cpp ├── streamingClassifier_rtwutil.h ├── streamingClassifier_terminate.cpp ├── streamingClassifier_terminate.h ├── streamingClassifier_types.h ├── sum.cpp └── sum.h └── resources └── project ├── 1E-juF5LqehEtfn-hHKKys3-P5I ├── 1klYbmWTBCSlBDao2brjxGx9Ensd.xml ├── 1klYbmWTBCSlBDao2brjxGx9Ensp.xml ├── 4pZ0d02Y0iUlXKpbyIWdJlZzu8od.xml ├── 4pZ0d02Y0iUlXKpbyIWdJlZzu8op.xml ├── AoprX6ao4cFeqpj9YMCjNOoIBu0d.xml ├── AoprX6ao4cFeqpj9YMCjNOoIBu0p.xml ├── IIa34Uv43MU0oPwdFsZbt3J59GEd.xml ├── IIa34Uv43MU0oPwdFsZbt3J59GEp.xml ├── _b8hhhPA47WSt11Gg_ojxbIl4osd.xml ├── _b8hhhPA47WSt11Gg_ojxbIl4osp.xml ├── cp8S662xlRdvpd1wl0o5PZZ5d68d.xml ├── cp8S662xlRdvpd1wl0o5PZZ5d68p.xml ├── ee-9b1weK989p_zZ-Jz0nuiMhPsd.xml └── ee-9b1weK989p_zZ-Jz0nuiMhPsp.xml ├── EEtUlUb-dLAdf0KpMVivaUlztwA ├── 8Y3ckhe0xfoClMWmHktUIgf4wrAd.xml ├── 8Y3ckhe0xfoClMWmHktUIgf4wrAp.xml ├── LEFlYYWOqi1f9u2Ha3YincqGBt4d.xml ├── LEFlYYWOqi1f9u2Ha3YincqGBt4p.xml ├── Vi68fGIGrbcDgjSI9PECNKLKueQd.xml ├── Vi68fGIGrbcDgjSI9PECNKLKueQp.xml ├── eCliMNQVGeM-qoJeFZw-DHTAKQsd.xml ├── eCliMNQVGeM-qoJeFZw-DHTAKQsp.xml ├── lccaOBu-zoc1I4mPSV-wHCCDYnMd.xml ├── lccaOBu-zoc1I4mPSV-wHCCDYnMp.xml ├── swOC8nlAydIDsJoFV_49YUTYxAod.xml ├── swOC8nlAydIDsJoFV_49YUTYxAop.xml ├── tITzuvc92Nm6LqxnPkuz0oOcP0Id.xml └── tITzuvc92Nm6LqxnPkuz0oOcP0Ip.xml ├── KAXfQgCar2Yb8zOxgvf9hdmLP1E ├── 7_yeh-ytgfGaEUZaZEK-iuCMDQod.xml ├── 7_yeh-ytgfGaEUZaZEK-iuCMDQop.xml ├── O_fUg4-_TdInlB3RdCGLay5yNBkd.xml ├── O_fUg4-_TdInlB3RdCGLay5yNBkp.xml ├── PlAmsLjLOOz5fUKyWV_agtNttO0d.xml ├── PlAmsLjLOOz5fUKyWV_agtNttO0p.xml ├── TKgbdHpHUByEvCNWoe9YqeXVx5sd.xml ├── TKgbdHpHUByEvCNWoe9YqeXVx5sp.xml ├── Tt-r8g3OoroqCUCxpC-KkuCmZVYd.xml └── Tt-r8g3OoroqCUCxpC-KkuCmZVYp.xml ├── NjSPEMsIuLUyIpr2u1Js5bVPsOs ├── 2kj09UetkV_lru3gvSPXnY6-nM4d.xml ├── 2kj09UetkV_lru3gvSPXnY6-nM4p.xml ├── KKyDJtbdIBOlaeHmIZd5VX6vqx8d.xml ├── KKyDJtbdIBOlaeHmIZd5VX6vqx8p.xml ├── QWNDYJD5mGW1bWYvPx9DtKnxzw4d.xml ├── QWNDYJD5mGW1bWYvPx9DtKnxzw4p.xml ├── R1RggVhA72agIvELiuhWPRS8F0Id.xml ├── R1RggVhA72agIvELiuhWPRS8F0Ip.xml ├── aEHSZBIY-yve10yGis12Zr5DLZod.xml ├── aEHSZBIY-yve10yGis12Zr5DLZop.xml ├── j4xwF_j8iFTVayUMfxLgMnTbencd.xml ├── j4xwF_j8iFTVayUMfxLgMnTbencp.xml ├── r8LR4nLmg9ai3oHrW1r_-KocQzkd.xml └── r8LR4nLmg9ai3oHrW1r_-KocQzkp.xml ├── Project.xml ├── S82aYhekdLB-g7IxuQ2F4iZZzr4 ├── 4sePxz6ELUi-03QmDciEwK4ifPgd.xml ├── 4sePxz6ELUi-03QmDciEwK4ifPgp.xml ├── NqxiTjXvd6VQwxY7Gl2CFF9iHQwd.xml ├── NqxiTjXvd6VQwxY7Gl2CFF9iHQwp.xml ├── SAzybIkWdE8NQlPWYUuqaoUZK_kd.xml ├── SAzybIkWdE8NQlPWYUuqaoUZK_kp.xml ├── U4meASRt5gyiiJy_H0eJw44q6UQd.xml ├── U4meASRt5gyiiJy_H0eJw44q6UQp.xml ├── VSOL3lDOyEo2E2lJiqiC8h8oEiMd.xml ├── VSOL3lDOyEo2E2lJiqiC8h8oEiMp.xml ├── dNKjTsqJzfNyyeVk-qkB0eyzqlgd.xml ├── dNKjTsqJzfNyyeVk-qkB0eyzqlgp.xml ├── mEsVC4fui6TQjWjYQZJFiLwCnX8d.xml ├── mEsVC4fui6TQjWjYQZJFiLwCnX8p.xml ├── pc_DyjInGEprrJipdBxXAxISXRwd.xml ├── pc_DyjInGEprrJipdBxXAxISXRwp.xml ├── wHRGWZgsLaouoY52BCmprgyQbaUd.xml ├── wHRGWZgsLaouoY52BCmprgyQbaUp.xml ├── zmQpL1SK_c5N3yFRURp1mJhssVkd.xml ├── zmQpL1SK_c5N3yFRURp1mJhssVkp.xml ├── zt-b0ENAM8EVFMB-e6CUEcDq6Ogd.xml └── zt-b0ENAM8EVFMB-e6CUEcDq6Ogp.xml ├── VFIGuyZScAig4eq5dx7XRG6ZPxM ├── P8CmMJHg3F1O1URMkP1nO9Sg_wcd.xml ├── P8CmMJHg3F1O1URMkP1nO9Sg_wcp.xml ├── RzMX4cA_tUUYAmOa63mSGHetMQEd.xml ├── RzMX4cA_tUUYAmOa63mSGHetMQEp.xml ├── Th31xzCehQfx2ZNIL2aG6F9qEfkd.xml ├── Th31xzCehQfx2ZNIL2aG6F9qEfkp.xml ├── WGfw9M7uJaKFhPyon02bDHMgrDsd.xml ├── WGfw9M7uJaKFhPyon02bDHMgrDsp.xml ├── eFMemad1y7EOGGujCtrESH4PrYUd.xml ├── eFMemad1y7EOGGujCtrESH4PrYUp.xml ├── jW3HIqXTRXSRyVrKwXHzQJwJ_d0d.xml ├── jW3HIqXTRXSRyVrKwXHzQJwJ_d0p.xml ├── jqABMBbC5NBvgEPEPdNS5CpBePAd.xml └── jqABMBbC5NBvgEPEPdNS5CpBePAp.xml ├── W1eD2F85jUZK1DJhjzKdaV-n984 ├── lgxhYb0uuzQtts8qssYzLgNGqscd.xml └── lgxhYb0uuzQtts8qssYzLgNGqscp.xml ├── XDtian5PyaOKjwBGHx0WPBNiUDU ├── -mYgBjhDh4ajXutp2k-akmU-P0Ud.xml ├── -mYgBjhDh4ajXutp2k-akmU-P0Up.xml ├── 07vKAM8Aeqk6zveQ7ceC4dZn1lgd.xml ├── 07vKAM8Aeqk6zveQ7ceC4dZn1lgp.xml ├── 0oyZ1eI9GaAf-QRerrDObAaHdUcd.xml ├── 0oyZ1eI9GaAf-QRerrDObAaHdUcp.xml ├── 17LZUFGRsVvb4pAfFVCus3ysbbMd.xml ├── 17LZUFGRsVvb4pAfFVCus3ysbbMp.xml ├── 2HH4kdpVS76QesHs4A9otLFBUPod.xml ├── 2HH4kdpVS76QesHs4A9otLFBUPop.xml ├── 2WKglMMgsHIVjW2ZiXrJoMogguQd.xml ├── 2WKglMMgsHIVjW2ZiXrJoMogguQp.xml ├── 3WtokzSoEoyEv36XAiI7RmftEv8d.xml ├── 3WtokzSoEoyEv36XAiI7RmftEv8p.xml ├── 3mVOXnxRg42fOLtCSfQICqXoXScd.xml ├── 3mVOXnxRg42fOLtCSfQICqXoXScp.xml ├── 4bjJamYr5XwUjkkIjJo-YEhgMKod.xml ├── 4bjJamYr5XwUjkkIjJo-YEhgMKop.xml ├── 58csA2IHrumNQWliHp7SO-oREw4d.xml ├── 58csA2IHrumNQWliHp7SO-oREw4p.xml ├── 5AMFWkRRx9jWHMYSEP2656oixZId.xml ├── 5AMFWkRRx9jWHMYSEP2656oixZIp.xml ├── 5_9yVTu0LAYJOUpxtQYl3xNWk2kd.xml ├── 5_9yVTu0LAYJOUpxtQYl3xNWk2kp.xml ├── 67id2nIyXTVXDgpO5Ai9JbPIKsAd.xml ├── 67id2nIyXTVXDgpO5Ai9JbPIKsAp.xml ├── 6EI_wh_ZFpSGOqnWbEHkoltrV7od.xml ├── 6EI_wh_ZFpSGOqnWbEHkoltrV7op.xml ├── 6YAXRI4z3TAXlKI6eeiKF7YO2sEd.xml ├── 6YAXRI4z3TAXlKI6eeiKF7YO2sEp.xml ├── 75R_E1vNGlDHQ2CT7_5yJMfxT9wd.xml ├── 75R_E1vNGlDHQ2CT7_5yJMfxT9wp.xml ├── 7fp7DXfzVkXyKsGzTgL1oHOIYg8d.xml ├── 7fp7DXfzVkXyKsGzTgL1oHOIYg8p.xml ├── 7kVQa0X1FjZcE_NvmTUABNBymOcd.xml ├── 7kVQa0X1FjZcE_NvmTUABNBymOcp.xml ├── 7ya_YW4DMtqis5O2UcNplQcWvaMd.xml ├── 7ya_YW4DMtqis5O2UcNplQcWvaMp.xml ├── 9wVG98mEWAa6139E95myAgJHrfod.xml ├── 9wVG98mEWAa6139E95myAgJHrfop.xml ├── AJXKboYUVCODpdAq29GtAmezVCsd.xml ├── AJXKboYUVCODpdAq29GtAmezVCsp.xml ├── ARP-bRgQq-xFlHYJTI18HQ2wHdAd.xml ├── ARP-bRgQq-xFlHYJTI18HQ2wHdAp.xml ├── B0ncBN7o8IEgcmxHIXhYFTyYXEkd.xml ├── B0ncBN7o8IEgcmxHIXhYFTyYXEkp.xml ├── B6gjTo0sLeOWBLYLJp2wZ2mY9ikd.xml ├── B6gjTo0sLeOWBLYLJp2wZ2mY9ikp.xml ├── BE6dWXBqF7q4xNIyesPm1zB_CU4d.xml ├── BE6dWXBqF7q4xNIyesPm1zB_CU4p.xml ├── BORHeKNDYjD-jFyStXwnQMNABvMd.xml ├── BORHeKNDYjD-jFyStXwnQMNABvMp.xml ├── ByFmLxsYKAEEOGa3gTljHv8XEakd.xml ├── ByFmLxsYKAEEOGa3gTljHv8XEakp.xml ├── C9qUISn-f3JVvBqcAV52NDXG2uAd.xml ├── C9qUISn-f3JVvBqcAV52NDXG2uAp.xml ├── E4R4mg7P42RhDEoWteRosZJfgxcd.xml ├── E4R4mg7P42RhDEoWteRosZJfgxcp.xml ├── FFerR_AdL1TkqQ1ZPBkjHm-fFlUd.xml ├── FFerR_AdL1TkqQ1ZPBkjHm-fFlUp.xml ├── G9ORKQlwtFx1_25VTlBhudOBGBUd.xml ├── G9ORKQlwtFx1_25VTlBhudOBGBUp.xml ├── GU8hdze6_9ti-rgeNz4x543GBxUd.xml ├── GU8hdze6_9ti-rgeNz4x543GBxUp.xml ├── Ggf1EEPqsJzbXyd7azdEn49I6kUd.xml ├── Ggf1EEPqsJzbXyd7azdEn49I6kUp.xml ├── GuzRB4F4EPNlPrYoXwJwxfonzZYd.xml ├── GuzRB4F4EPNlPrYoXwJwxfonzZYp.xml ├── HlkS4lhVJJdzT5-VgikUnM9VGEsd.xml ├── HlkS4lhVJJdzT5-VgikUnM9VGEsp.xml ├── ITQvXP1dhJXhIxrj3xeF0BOW4d0d.xml ├── ITQvXP1dhJXhIxrj3xeF0BOW4d0p.xml ├── Ir9I93etDNQmRezjQAUTw6ZsBb0d.xml ├── Ir9I93etDNQmRezjQAUTw6ZsBb0p.xml ├── K69APEKN2-nikwLszaVsZ15OW0Id.xml ├── K69APEKN2-nikwLszaVsZ15OW0Ip.xml ├── KDIKvqxTYexgGE0WIuNxcrsQF1Yd.xml ├── KDIKvqxTYexgGE0WIuNxcrsQF1Yp.xml ├── Knz2NcBVNwza6oEIjbvodP1I3jgd.xml ├── Knz2NcBVNwza6oEIjbvodP1I3jgp.xml ├── Nr8fjyjJSzIK_1vrIY8kpzmp0fkd.xml ├── Nr8fjyjJSzIK_1vrIY8kpzmp0fkp.xml ├── OkRVctHzeOUFWfbDOEWWqabca0cd.xml ├── OkRVctHzeOUFWfbDOEWWqabca0cp.xml ├── PnFOaAZ-JJQTXFWiubMHhyD66C8d.xml ├── PnFOaAZ-JJQTXFWiubMHhyD66C8p.xml ├── QNrkdi1hM6p2z_dxRWaOYiyQXHgd.xml ├── QNrkdi1hM6p2z_dxRWaOYiyQXHgp.xml ├── QnTvRLRW5ZsJVB-yCJCbl9qqKDId.xml ├── QnTvRLRW5ZsJVB-yCJCbl9qqKDIp.xml ├── SDyO3aIFwEjocYQdCbWG8mj7PSEd.xml ├── SDyO3aIFwEjocYQdCbWG8mj7PSEp.xml ├── TzlSyjcnuUO7IEbHMFJUBTZESpUd.xml ├── TzlSyjcnuUO7IEbHMFJUBTZESpUp.xml ├── UzCk5mvRBrwwTKTngEZSDawms9Md.xml ├── UzCk5mvRBrwwTKTngEZSDawms9Mp.xml ├── VFIGuyZScAig4eq5dx7XRG6ZPxMd.xml ├── VFIGuyZScAig4eq5dx7XRG6ZPxMp.xml ├── VQXrQRK_S2Nycxof0ZkYaeUxT_od.xml ├── VQXrQRK_S2Nycxof0ZkYaeUxT_op.xml ├── VRTbnfWdJ8tGKsNxQdGixsuddUUd.xml ├── VRTbnfWdJ8tGKsNxQdGixsuddUUp.xml ├── Vd4Lq4vGMkIC7qncd_UyxbvIBhId.xml ├── Vd4Lq4vGMkIC7qncd_UyxbvIBhIp.xml ├── Vv0elmMl1xCkIHV6CLxyyrHsQQId.xml ├── Vv0elmMl1xCkIHV6CLxyyrHsQQIp.xml ├── WGn7Cezqj90MsMCl3gzQNJfgFA4d.xml ├── WGn7Cezqj90MsMCl3gzQNJfgFA4p.xml ├── XN7Y155ybtAWFKfmwR3PiMDpUowd.xml ├── XN7Y155ybtAWFKfmwR3PiMDpUowp.xml ├── XtfDB9GEXtlj-L0eu1IzAKPzNc4d.xml ├── XtfDB9GEXtlj-L0eu1IzAKPzNc4p.xml ├── YJkiEG7CByO4-rotZPjiB0R6apQd.xml ├── YJkiEG7CByO4-rotZPjiB0R6apQp.xml ├── Zd-mwUNXNC9mFKPgY4KZLnD5qDQd.xml ├── Zd-mwUNXNC9mFKPgY4KZLnD5qDQp.xml ├── _2322m8Ou8rJg7GaLc6cdMTwuHod.xml ├── _2322m8Ou8rJg7GaLc6cdMTwuHop.xml ├── _69ZWxnhkAbFftwai8fA1ABk8mgd.xml ├── _69ZWxnhkAbFftwai8fA1ABk8mgp.xml ├── _DNftmraXNK02kkeWbDP77jj4bwd.xml ├── _DNftmraXNK02kkeWbDP77jj4bwp.xml ├── _EmYCj2h-iZ3OOjg3HUK2v-0lxEd.xml ├── _EmYCj2h-iZ3OOjg3HUK2v-0lxEp.xml ├── _YZbTU9hDX-Cy-KHoWrKa6n-dkod.xml ├── _YZbTU9hDX-Cy-KHoWrKa6n-dkop.xml ├── a7gm8yMCxu4G4GFslkiw3qoLFUYd.xml ├── a7gm8yMCxu4G4GFslkiw3qoLFUYp.xml ├── aQlnecyUT1KLONl6R5J8895XX1Ud.xml ├── aQlnecyUT1KLONl6R5J8895XX1Up.xml ├── bXODY4F7c_A2mMQ41F1hiF_Bwrcd.xml ├── bXODY4F7c_A2mMQ41F1hiF_Bwrcp.xml ├── c-jrk1-fYRVzZI9KimLcknot-bQd.xml ├── c-jrk1-fYRVzZI9KimLcknot-bQp.xml ├── cuI-sIpUyg3xggPoVNnUADXBfp4d.xml ├── cuI-sIpUyg3xggPoVNnUADXBfp4p.xml ├── f-Jvs_bV5bvogQJyutLPL5ygexQd.xml ├── f-Jvs_bV5bvogQJyutLPL5ygexQp.xml ├── fF6CCHmCkZLBWurMahSSZNcmuyod.xml ├── fF6CCHmCkZLBWurMahSSZNcmuyop.xml ├── fnbA8rjrRE-kZV-d9N5v40N-wDQd.xml ├── fnbA8rjrRE-kZV-d9N5v40N-wDQp.xml ├── goyWkEXl-v9ACnI5JVFro9lBP98d.xml ├── goyWkEXl-v9ACnI5JVFro9lBP98p.xml ├── htH7P5d_IiVAawJ-kf2S1wIxmqwd.xml ├── htH7P5d_IiVAawJ-kf2S1wIxmqwp.xml ├── iRfSHOIW4ecVdSGZmsockln9RPQd.xml ├── iRfSHOIW4ecVdSGZmsockln9RPQp.xml ├── iXTIPufGzrWjvoVibcnVpq44rnYd.xml ├── iXTIPufGzrWjvoVibcnVpq44rnYp.xml ├── ikns8mCW5F5Lv5QCrHaW7mMEOeEd.xml ├── ikns8mCW5F5Lv5QCrHaW7mMEOeEp.xml ├── ipkWc3t1RKCZ5kBGo1cguuiWn84d.xml ├── ipkWc3t1RKCZ5kBGo1cguuiWn84p.xml ├── jAz8aMkDoUjE-Lh2PSPqCN72jq8d.xml ├── jAz8aMkDoUjE-Lh2PSPqCN72jq8p.xml ├── k_x81olL4QmYnH-i_3IGzfvUQicd.xml ├── k_x81olL4QmYnH-i_3IGzfvUQicp.xml ├── kbtrAXpO3KmpgelqX7YUD58keXId.xml ├── kbtrAXpO3KmpgelqX7YUD58keXIp.xml ├── lbXOcn-F4H_UpuZMQZ1JfxlLoaUd.xml ├── lbXOcn-F4H_UpuZMQZ1JfxlLoaUp.xml ├── mV4twaRzXWzhUgsiIpjqEC7-B9Id.xml ├── mV4twaRzXWzhUgsiIpjqEC7-B9Ip.xml ├── mdfyEoihkfJywmWcuRHmZEmf74wd.xml ├── mdfyEoihkfJywmWcuRHmZEmf74wp.xml ├── mdwjJe3x6tRm7NWgf2lI8H9GLGId.xml ├── mdwjJe3x6tRm7NWgf2lI8H9GLGIp.xml ├── me3YU_yoc73uNaljJP4DTlAXV_Qd.xml ├── me3YU_yoc73uNaljJP4DTlAXV_Qp.xml ├── mm3XxlgA-nIuIAezDkmqmqJtpF8d.xml ├── mm3XxlgA-nIuIAezDkmqmqJtpF8p.xml ├── n0bXgloVQJhtn8Fgtsmftr8K1wUd.xml ├── n0bXgloVQJhtn8Fgtsmftr8K1wUp.xml ├── nrBBp7OiZDGCVy8cuvG8O7q76iEd.xml ├── nrBBp7OiZDGCVy8cuvG8O7q76iEp.xml ├── ohLaxWNluvL2ulTQEj_4ll3iEsQd.xml ├── ohLaxWNluvL2ulTQEj_4ll3iEsQp.xml ├── pg-a7_akHmXzQUtIkMfNfRJGmgQd.xml ├── pg-a7_akHmXzQUtIkMfNfRJGmgQp.xml ├── qY3RkgNdvuoih7a3Zlq-InLstqUd.xml ├── qY3RkgNdvuoih7a3Zlq-InLstqUp.xml ├── rK5ob_2D70JWUKybl7C2WrwvYxgd.xml ├── rK5ob_2D70JWUKybl7C2WrwvYxgp.xml ├── ruVOtcxielsYWSp4-N541MFW8E0d.xml ├── ruVOtcxielsYWSp4-N541MFW8E0p.xml ├── s_zMABkd0GUNBNBh731m5ACADs0d.xml ├── s_zMABkd0GUNBNBh731m5ACADs0p.xml ├── shmn2BXMGqy9Jdq1keIzImGcC5Md.xml ├── shmn2BXMGqy9Jdq1keIzImGcC5Mp.xml ├── tVX7_KXVXprUtvCLR3hYYsD0DdYd.xml ├── tVX7_KXVXprUtvCLR3hYYsD0DdYp.xml ├── wCgbRCyGezXYA0tReUpuWPEAzLId.xml ├── wCgbRCyGezXYA0tReUpuWPEAzLIp.xml ├── wvKX1WjHd-ENOqON4ZzPKEUersQd.xml ├── wvKX1WjHd-ENOqON4ZzPKEUersQp.xml ├── yLVRuxYJ-nnHDrtXNh1ZqEcGaXcd.xml ├── yLVRuxYJ-nnHDrtXNh1ZqEcGaXcp.xml ├── yUUrJ160RRQB4xp5kn8L-N6FdsId.xml ├── yUUrJ160RRQB4xp5kn8L-N6FdsIp.xml ├── zsPYMyURGgdYrupa1KwT9H6C_TYd.xml └── zsPYMyURGgdYrupa1KwT9H6C_TYp.xml ├── Zd-mwUNXNC9mFKPgY4KZLnD5qDQ ├── iaKQxw64J9OdIoeYWV1C42astiMd.xml ├── iaKQxw64J9OdIoeYWV1C42astiMp.xml ├── kjoCVos0k-0q6OphDV8Ix3F3Dsgd.xml ├── kjoCVos0k-0q6OphDV8Ix3F3Dsgp.xml ├── wCX7vYsjd3Y7xQvDW_d7nJQ9pIwd.xml └── wCX7vYsjd3Y7xQvDW_d7nJQ9pIwp.xml ├── _69ZWxnhkAbFftwai8fA1ABk8mg ├── YUWT5ZuDI1UaxDdAfpDG1wvZBtUd.xml ├── YUWT5ZuDI1UaxDdAfpDG1wvZBtUp.xml ├── fC3ksxeV0IcDaBsZZM7-S5rg07Ed.xml └── fC3ksxeV0IcDaBsZZM7-S5rg07Ep.xml ├── fjRQtWiSIy7hIlj-Kmk87M7s21k ├── NjSPEMsIuLUyIpr2u1Js5bVPsOsd.xml └── NjSPEMsIuLUyIpr2u1Js5bVPsOsp.xml ├── l-puU0yAZscMqVEpKH6b0Twiu_s ├── pMZg5Ioo5VUZrjfbud865u1El8Id.xml ├── pMZg5Ioo5VUZrjfbud865u1El8Ip.xml ├── zp5uqcKqc_MkWNjUcg06AArU6PUd.xml └── zp5uqcKqc_MkWNjUcg06AArU6PUp.xml ├── qaw0eS1zuuY1ar9TdPn1GMfrjbQ ├── 1E-juF5LqehEtfn-hHKKys3-P5Id.xml ├── 1E-juF5LqehEtfn-hHKKys3-P5Ip.xml ├── 6JSVCuQk5epMS7cMxfi86RVx-nsd.xml ├── 6JSVCuQk5epMS7cMxfi86RVx-nsp.xml ├── FxOZ4NmcFNKhnXbIsy82e4h_sCwd.xml ├── FxOZ4NmcFNKhnXbIsy82e4h_sCwp.xml ├── K7tnbULIzXLRlXeSpjeaU1Xlr1od.xml ├── K7tnbULIzXLRlXeSpjeaU1Xlr1op.xml ├── QMJD9OLFzxcTTbPOoh-ahQ4zTRUd.xml ├── QMJD9OLFzxcTTbPOoh-ahQ4zTRUp.xml ├── S82aYhekdLB-g7IxuQ2F4iZZzr4d.xml ├── S82aYhekdLB-g7IxuQ2F4iZZzr4p.xml ├── TMK4UzWHdRLhy_w-CHt9y11Q8XAd.xml ├── TMK4UzWHdRLhy_w-CHt9y11Q8XAp.xml ├── XDtian5PyaOKjwBGHx0WPBNiUDUd.xml ├── XDtian5PyaOKjwBGHx0WPBNiUDUp.xml ├── bTEJeU_8R4R4qC77t7aJSjzV1F0d.xml ├── bTEJeU_8R4R4qC77t7aJSjzV1F0p.xml ├── l-puU0yAZscMqVEpKH6b0Twiu_sd.xml ├── l-puU0yAZscMqVEpKH6b0Twiu_sp.xml ├── lKQG3fVl898GygtDynhOHAKyGrId.xml └── lKQG3fVl898GygtDynhOHAKyGrIp.xml ├── root ├── EEtUlUb-dLAdf0KpMVivaUlztwAp.xml ├── GiiBklLgTxteCEmomM8RCvWT0nQd.xml ├── GiiBklLgTxteCEmomM8RCvWT0nQp.xml ├── KAXfQgCar2Yb8zOxgvf9hdmLP1Ep.xml ├── W1eD2F85jUZK1DJhjzKdaV-n984p.xml ├── fjRQtWiSIy7hIlj-Kmk87M7s21kp.xml └── qaw0eS1zuuY1ar9TdPn1GMfrjbQp.xml ├── rootp.xml ├── uuid-07931e29-9822-4bab-b4bc-e48148a08cc1.xml └── uuid-7b2fdf73-1d9a-4c16-9b2c-327b642a5790.xml /.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright 2020 The MathWorks, Inc. 2 | 3 | AirCompressorData 4 | AirCompressorDataset.zip 5 | *.asv 6 | -------------------------------------------------------------------------------- /AirCompressorDataset.rights: -------------------------------------------------------------------------------- 1 | License for Air Compressor Dataset Repository 2 | Copyright 2016 Nishchal K. Verma, R. K. Sevakula, S. Dixit and A. Salour 3 | 4 | Redistribution and use of this dataset, with or without modification, are permitted provided that the following conditions are met: 5 | 1. Redistribution in any form must retain the above copyright notice, this list of conditions and the following disclaimer. 6 | 7 | 2. Redistribution and use in any form must be accompanied by the following citation: 8 | 9 | Nishchal K. Verma, R. K. Sevakula, S. Dixit and A. Salour, Intelligent Condition Based Monitoring using Acoustic Signals for Air Compressors, IEEE Transactions on Reliability, vol. 65, no. 1, pp. 291-309, 2016. 10 | 11 | THIS DATASET IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS DATASET, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 12 | -------------------------------------------------------------------------------- /Aircompressorclassification.prj: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /DeepLearningOverviewForSignals.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/matlab-deep-learning/Fault-Detection-Using-Deep-Learning-Classification/539670f3868fbf66c51762fff8dc3843f7880242/DeepLearningOverviewForSignals.pdf -------------------------------------------------------------------------------- /HelperFiles/DownloadData.m: -------------------------------------------------------------------------------- 1 | function DownloadData 2 | % Copyright 2020 The MathWorks, Inc. 3 | 4 | dataZip = tempname+".zip"; 5 | url = "https://www.mathworks.com/supportfiles/audio/AirCompressorDataset/AirCompressorDataset.zip"; 6 | dataFolder = getAirCompressorDataFolder(); 7 | 8 | disp("Checking for dataset..."); 9 | 10 | if ~isfolder(dataFolder) || numel(dir(dataFolder))<=2 11 | answer = questdlg("Do you want to download the dataset now?","Dataset not found","Yes","No","Yes"); 12 | 13 | switch answer 14 | case "Yes" 15 | disp("Downloading Data...") 16 | outFile = websave(dataZip, url); 17 | disp("Data zip file saved as " + outFile); 18 | zipdeleter = onCleanup(@()delete(outFile)); 19 | 20 | disp("Unzipping data file..."); 21 | unzip(dataZip, dataFolder); 22 | disp("Data unzipped successfully."); 23 | case "No" 24 | disp("Dataset not downloaded. You will need to download the dataset to run the example. Please run DownloadData.") 25 | end 26 | else 27 | disp("Dataset found."); 28 | end 29 | 30 | addpath("AirCompressorData"); -------------------------------------------------------------------------------- /HelperFiles/OpenCodegenReport.m: -------------------------------------------------------------------------------- 1 | % Copyright 2018-2020 The MathWorks, Inc. 2 | 3 | function OpenCodegenReport 4 | 5 | prj = currentProject; 6 | open(fullfile(prj.RootFolder,'arm_compute','html','report.mldatx')); 7 | 8 | end -------------------------------------------------------------------------------- /HelperFiles/OpenCodegenReportGenericC.m: -------------------------------------------------------------------------------- 1 | % Copyright 2018-2020 The MathWorks, Inc. 2 | 3 | function OpenCodegenReportGenericC 4 | 5 | prj = currentProject; 6 | open(fullfile(prj.RootFolder,'codegen','lib','streamingClassifier','html','report.mldatx')); 7 | 8 | end -------------------------------------------------------------------------------- /HelperFiles/OpenPart1.m: -------------------------------------------------------------------------------- 1 | % Copyright 2020 The MathWorks, Inc. 2 | 3 | edit Part01_DataPreparation.mlx -------------------------------------------------------------------------------- /HelperFiles/OpenPart2.m: -------------------------------------------------------------------------------- 1 | % Copyright 2020 The MathWorks, Inc. 2 | 3 | edit Part02_Modeling.mlx -------------------------------------------------------------------------------- /HelperFiles/OpenPart3.m: -------------------------------------------------------------------------------- 1 | % Copyright 2020 The MathWorks, Inc. 2 | 3 | edit Part03_Deployment.mlx -------------------------------------------------------------------------------- /HelperFiles/getAirCompressorDataFolder.m: -------------------------------------------------------------------------------- 1 | function datafolder = getAirCompressorDataFolder() 2 | % datafolder = getAirCompressorDataFolder() 3 | % This function returns the stored setting for a data folder for the 4 | % dataset name AirCompressorData 5 | % 6 | % If the setting does not exist, it prompts the user to pick a directory 7 | % and stores it for later use. 8 | 9 | % Setting name for this set of data 10 | datasetname = "AirCompressorData"; 11 | 12 | % Create settings object and add DemoData group if it doesn't exist 13 | s = settings; 14 | if ~hasGroup(s, "DemoData") 15 | addGroup(s, "DemoData"); 16 | end 17 | 18 | % If setting does not exist, let user pick a data directory 19 | if ~hasSetting(s.DemoData, datasetname) 20 | p = string(uigetdir(pwd, "Select a Directory for " + datasetname)); 21 | if p == "0" 22 | error("getDataDirectory:UserCancelled", "User cancelled download"); 23 | 24 | end 25 | addSetting(s.DemoData, datasetname, 'PersonalValue', p, 'ValidationFcn', @mustBeFolder); 26 | 27 | end 28 | 29 | % Extract the active valueh 30 | datafolder = s.DemoData.(datasetname).ActiveValue; 31 | 32 | end 33 | -------------------------------------------------------------------------------- /HelperFiles/reloadDatastore.m: -------------------------------------------------------------------------------- 1 | % Copyright 2020 The MathWorks, Inc. 2 | 3 | % Recreate the datastore again 4 | 5 | dataFolder = getAirCompressorDataFolder; 6 | ads = audioDatastore(dataFolder,'IncludeSubfolders',true,'LabelSource','foldernames'); 7 | rng(3); 8 | ads = shuffle(ads); 9 | [adsTrain,adsValidation] = splitEachLabel(ads,0.9,0.1); -------------------------------------------------------------------------------- /HelperFiles/streamingClassifier.m: -------------------------------------------------------------------------------- 1 | % Copyright 2020 The MathWorks, Inc. 2 | 3 | function [scores,features] = streamingClassifier(audioIn,M,S) 4 | % This is a streaming classifier function 5 | 6 | persistent airCompNet; 7 | 8 | if isempty(airCompNet) 9 | airCompNet = coder.loadDeepLearningNetwork('TrainedModel.mat'); 10 | end 11 | 12 | % Extract features using function 13 | features = extractFeatures(audioIn); 14 | 15 | % Normalize 16 | features = ((features - M')./S'); 17 | 18 | % Classify 19 | [airCompNet, scores] = predictAndUpdateState(airCompNet,features); 20 | 21 | end 22 | 23 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2020, The MathWorks, Inc. 2 | All rights reserved. 3 | Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 4 | 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 5 | 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 6 | 3. In all cases, the software is, and all modifications and derivatives of the software shall be, licensed to you solely for use in conjunction with MathWorks products and service offerings. 7 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 8 | -------------------------------------------------------------------------------- /Part01_DataPreparation.mlx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/matlab-deep-learning/Fault-Detection-Using-Deep-Learning-Classification/539670f3868fbf66c51762fff8dc3843f7880242/Part01_DataPreparation.mlx -------------------------------------------------------------------------------- /Part02_Modeling.mlx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/matlab-deep-learning/Fault-Detection-Using-Deep-Learning-Classification/539670f3868fbf66c51762fff8dc3843f7880242/Part02_Modeling.mlx -------------------------------------------------------------------------------- /Part03_Deployment.mlx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/matlab-deep-learning/Fault-Detection-Using-Deep-Learning-Classification/539670f3868fbf66c51762fff8dc3843f7880242/Part03_Deployment.mlx -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Fault Detection Using LSTM Deep Learning Classification 2 | This demo shows the full deep learning workflow for an example of signal data. We show how to prepare, model, and deploy a deep learning LSTM based classification algorithm to identify the condition or output of a mechanical air compressor. 3 | ![](Images/bearingsignal.png) 4 | ![](Images/confusionmat.png) 5 | We show examples on how to perform the following parts of the Deep Learning workflow: 6 | - Part1 - Data Preparation 7 | - Part2 - Modeling 8 | - Part3 - Deployment 9 | ![](Images/deeplearningworkflow.png) 10 | This demo is implemented as a MATLAB project and will require you to open the project to run it. The project will manage all paths and shortcuts you need. There is also a significant data copy required the first time you run the project. 11 | ## Part 1 - Data Preparation 12 | This example shows how to extract the set of acoustic features that will be used as inputs to the LSTM Deep Learning network. 13 | To run: 14 | 1. Open MATLAB project Aircompressorclassification.prj 15 | 2. Open and run Part01_DataPreparation.mlx 16 | ## Part 2 - Modeling 17 | This example shows how to train LSTM network to classify multiple modes of operation that include healthy and unhealthy signals. 18 | To run: 19 | 1. Open MATLAB project Aircompressorclassification.prj 20 | 2. Open and run Part02_Modeling.mlx 21 | ## Part 3 - Deployment 22 | This example shows how to generate optimized c++ code ready for deployment. 23 | 24 | To run: 25 | 1. Open MATLAB project Aircompressorclassification.prj 26 | 1. Open MATLAB project Aircompressorclassification.prj 27 | 2. Open and run Part03_Deployment.mlx 28 | 29 | -------------------------------------------------------------------------------- /SavedData/LSTMActivations.mat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/matlab-deep-learning/Fault-Detection-Using-Deep-Learning-Classification/539670f3868fbf66c51762fff8dc3843f7880242/SavedData/LSTMActivations.mat -------------------------------------------------------------------------------- /SavedData/Metrics.mat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/matlab-deep-learning/Fault-Detection-Using-Deep-Learning-Classification/539670f3868fbf66c51762fff8dc3843f7880242/SavedData/Metrics.mat -------------------------------------------------------------------------------- /SavedData/TrainedModel.mat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/matlab-deep-learning/Fault-Detection-Using-Deep-Learning-Classification/539670f3868fbf66c51762fff8dc3843f7880242/SavedData/TrainedModel.mat -------------------------------------------------------------------------------- /SavedData/TrainingFeatures.mat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/matlab-deep-learning/Fault-Detection-Using-Deep-Learning-Classification/539670f3868fbf66c51762fff8dc3843f7880242/SavedData/TrainingFeatures.mat -------------------------------------------------------------------------------- /SavedData/ValidationFeatures.mat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/matlab-deep-learning/Fault-Detection-Using-Deep-Learning-Classification/539670f3868fbf66c51762fff8dc3843f7880242/SavedData/ValidationFeatures.mat -------------------------------------------------------------------------------- /SavedData/ValidationResults.mat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/matlab-deep-learning/Fault-Detection-Using-Deep-Learning-Classification/539670f3868fbf66c51762fff8dc3843f7880242/SavedData/ValidationResults.mat -------------------------------------------------------------------------------- /Tests/SmokeTests.m: -------------------------------------------------------------------------------- 1 | classdef SmokeTests < matlab.unittest.TestCase 2 | 3 | properties (TestParameter) 4 | DemoFile = struct( ... 5 | 'Part01_DataPreparation', {@Part01_DataPreparation}, ... 6 | 'Part02_Modeling', {@Part02_Modeling}, ... 7 | 'Part03_Deployment', {@Part03_Deployment}); 8 | Shortcut = struct( ... 9 | 'OpenCodegenReport', {@OpenCodegenReport}, ... 10 | 'OpenPart1', {@OpenPart1}, ... 11 | 'OpenPart2', {@OpenPart2}, ... 12 | 'OpenPart3', {@OpenPart3}); 13 | end 14 | 15 | methods (TestClassSetup) 16 | 17 | % Shut off graphics warnings 18 | function killGraphicsWarning(testCase) 19 | ws = warning('off', 'MATLAB:hg:AutoSoftwareOpenGL'); 20 | testCase.addTeardown(@()warning(ws)); 21 | 22 | end 23 | 24 | % Close any new figures created by doc 25 | function saveExistingFigures(testCase) 26 | existingfigs = findall(groot, 'Type', 'Figure'); 27 | testCase.addTeardown(@()delete(setdiff(findall(groot, 'Type', 'Figure'), existingfigs))) 28 | 29 | end 30 | 31 | end 32 | 33 | methods (Test) 34 | 35 | function demoShouldNotWarn(testCase, DemoFile) 36 | testCase.verifyWarningFree(DemoFile); 37 | 38 | end 39 | 40 | 41 | function shortcutShouldNotWarn(testCase, Shortcut) 42 | testCase.verifyWarningFree(Shortcut); 43 | 44 | end 45 | 46 | end 47 | 48 | end 49 | -------------------------------------------------------------------------------- /arm_compute/AsyncBuffercg.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: AsyncBuffercg.cpp 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | 8 | // Include Files 9 | #include "AsyncBuffercg.h" 10 | #include "AsyncBuffercgHelper.h" 11 | #include "DeepLearningNetwork.h" 12 | #include "SystemCore.h" 13 | #include "matlabCodegenHandle.h" 14 | #include "rt_nonfinite.h" 15 | #include "streamingClassifier.h" 16 | 17 | // Function Definitions 18 | 19 | // 20 | // Arguments : void 21 | // Return Type : int 22 | // 23 | int dsp_private_AsyncBuffercg::get_NumUnreadSamples() const 24 | { 25 | return this->pBuffer.get_NumUnreadSamples(); 26 | } 27 | 28 | // 29 | // Arguments : void 30 | // Return Type : dsp_private_AsyncBuffercg * 31 | // 32 | dsp_private_AsyncBuffercg *dsp_private_AsyncBuffercg::init() 33 | { 34 | dsp_private_AsyncBuffercg *obj; 35 | obj = this; 36 | obj->pBuffer.init(); 37 | obj->matlabCodegenIsDeleted = false; 38 | return obj; 39 | } 40 | 41 | // 42 | // Arguments : float out_data[] 43 | // int out_size[1] 44 | // Return Type : void 45 | // 46 | void dsp_private_AsyncBuffercg::read(float out_data[], int out_size[1]) 47 | { 48 | int underrun; 49 | this->pBuffer.read(out_data, out_size, (&underrun)); 50 | } 51 | 52 | // 53 | // Arguments : void 54 | // Return Type : void 55 | // 56 | void dsp_private_AsyncBuffercg::release() 57 | { 58 | this->pBuffer.release(); 59 | } 60 | 61 | // 62 | // Arguments : void 63 | // Return Type : void 64 | // 65 | void dsp_private_AsyncBuffercg::reset() 66 | { 67 | this->pBuffer.reset(); 68 | } 69 | 70 | // 71 | // Arguments : const float in[256] 72 | // Return Type : void 73 | // 74 | void dsp_private_AsyncBuffercg::write(const float in[256]) 75 | { 76 | this->pBuffer.step(in); 77 | } 78 | 79 | // 80 | // File trailer for AsyncBuffercg.cpp 81 | // 82 | // [EOF] 83 | // 84 | -------------------------------------------------------------------------------- /arm_compute/AsyncBuffercg.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: AsyncBuffercg.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef ASYNCBUFFERCG_H 8 | #define ASYNCBUFFERCG_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | #endif 16 | 17 | // 18 | // File trailer for AsyncBuffercg.h 19 | // 20 | // [EOF] 21 | // 22 | -------------------------------------------------------------------------------- /arm_compute/AsyncBuffercgHelper.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: AsyncBuffercgHelper.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef ASYNCBUFFERCGHELPER_H 8 | #define ASYNCBUFFERCGHELPER_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | #endif 16 | 17 | // 18 | // File trailer for AsyncBuffercgHelper.h 19 | // 20 | // [EOF] 21 | // 22 | -------------------------------------------------------------------------------- /arm_compute/DeepLearningNetwork.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: DeepLearningNetwork.h 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | #ifndef DEEPLEARNINGNETWORK_H 9 | #define DEEPLEARNINGNETWORK_H 10 | 11 | // Include Files 12 | #include "rtwtypes.h" 13 | #include 14 | #include 15 | 16 | // Type Declarations 17 | class TrainedModel0_0; 18 | 19 | // Function Declarations 20 | namespace coder { 21 | void DeepLearningNetwork_setup(TrainedModel0_0 *obj); 22 | 23 | } 24 | 25 | #endif 26 | // 27 | // File trailer for DeepLearningNetwork.h 28 | // 29 | // [EOF] 30 | // 31 | -------------------------------------------------------------------------------- /arm_compute/FFTImplementationCallback.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: FFTImplementationCallback.h 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | #ifndef FFTIMPLEMENTATIONCALLBACK_H 9 | #define FFTIMPLEMENTATIONCALLBACK_H 10 | 11 | // Include Files 12 | #include "rtwtypes.h" 13 | #include 14 | #include 15 | 16 | // Type Definitions 17 | namespace coder { 18 | namespace internal { 19 | class FFTImplementationCallback { 20 | public: 21 | static void doHalfLengthRadix2(const float x[512], creal32_T y[512]); 22 | }; 23 | 24 | } // namespace internal 25 | } // namespace coder 26 | 27 | #endif 28 | // 29 | // File trailer for FFTImplementationCallback.h 30 | // 31 | // [EOF] 32 | // 33 | -------------------------------------------------------------------------------- /arm_compute/MWSequenceInputLayer.cpp: -------------------------------------------------------------------------------- 1 | /* Copyright 2018-2020 The MathWorks, Inc. */ 2 | 3 | #include "MWSequenceInputLayerImpl.hpp" 4 | #include "MWSequenceInputLayer.hpp" 5 | #include "MWTargetNetworkImpl.hpp" 6 | #include "MWTensorBase.hpp" 7 | #include "MWCNNLayer.hpp" 8 | 9 | #include 10 | #include 11 | 12 | void MWSequenceInputLayer::createSequenceInputLayer(MWTargetNetworkImpl* ntwk_impl, MWTensorBase* m_in, bool m_isImageInput, int outbufIdx) 13 | { 14 | #if defined(MW_TARGET_TYPE_CUDNN) || defined(MW_TARGET_TYPE_MKLDNN) || defined(MW_TARGET_TYPE_ARMNEON) 15 | setInputTensor(m_in); 16 | allocateOutputTensor(-1, -1, -1, -1, -1, NULL); 17 | 18 | isImageInput = m_isImageInput; 19 | getOutputTensor(0)->setopBufIndex(outbufIdx); 20 | 21 | m_impl = new MWSequenceInputLayerImpl(this, ntwk_impl); 22 | 23 | #else 24 | // populate output tensor 25 | allocateOutputTensor(m_in->getHeight(), 26 | m_in->getWidth(), 27 | m_in->getChannels(), 28 | m_in->getBatchSize(), 29 | m_in->getSequenceLength(), 30 | NULL); 31 | 32 | m_impl = new MWSequenceInputLayerImpl(this, ntwk_impl, m_in->getChannels(), m_in->getBatchSize(), outbufIdx); 33 | 34 | return; 35 | #endif 36 | } 37 | 38 | void MWSequenceInputLayer::propagateSize() 39 | { 40 | #if defined(MW_TARGET_TYPE_CUDNN) || defined(MW_TARGET_TYPE_MKLDNN) || defined(MW_TARGET_TYPE_ARMNEON) 41 | resizeOutputTensor(getInputTensor(0)->getHeight(), 42 | getInputTensor(0)->getWidth(), 43 | getInputTensor(0)->getChannels(), 44 | getInputTensor(0)->getBatchSize(), 45 | getInputTensor(0)->getSequenceLength()); 46 | 47 | m_impl->propagateSize(); 48 | #endif 49 | } 50 | -------------------------------------------------------------------------------- /arm_compute/MWSequenceInputLayer.hpp: -------------------------------------------------------------------------------- 1 | /* Copyright 2018 The MathWorks, Inc. */ 2 | 3 | #ifndef _MW_SEQUENCEINPUT_LAYER_ 4 | #define _MW_SEQUENCEINPUT_LAYER_ 5 | 6 | #include "MWCNNLayer.hpp" 7 | 8 | class MWTargetNetworkImpl; 9 | class MWTensorBase; 10 | 11 | /** 12 | * Codegen class for SequenceInput layer 13 | */ 14 | class MWSequenceInputLayer: public MWCNNLayer 15 | { 16 | public: 17 | MWSequenceInputLayer() {} 18 | virtual ~MWSequenceInputLayer() {} 19 | 20 | void createSequenceInputLayer(MWTargetNetworkImpl* ntwk_impl, 21 | MWTensorBase* m_in, 22 | bool, 23 | int); 24 | void propagateSize(); 25 | bool isImageInput; 26 | 27 | }; 28 | 29 | #endif 30 | -------------------------------------------------------------------------------- /arm_compute/MWSequenceInputLayerImpl.cpp: -------------------------------------------------------------------------------- 1 | #include "MWSequenceInputLayerImpl.hpp" 2 | #include "MWCNNLayerImpl.hpp" 3 | #include "MWCNNLayer.hpp" 4 | #include "MWTensorBase.hpp" 5 | #include "MWTensor.hpp" 6 | #include 7 | #include 8 | class MWTargetNetworkImpl; 9 | #if MW_SEQIP_TAP 10 | extern void mw_interm_tap(float* memBuf, int size, int count); extern int tap_count; 11 | #endif 12 | MWSequenceInputLayerImpl::MWSequenceInputLayerImpl(MWCNNLayer* layer, 13 | MWTargetNetworkImpl* ntwk_impl) : MWCNNLayerImpl(layer, ntwk_impl) { 14 | ZUTPCvgISoRdtnhGqXzM = true; } 15 | MWSequenceInputLayerImpl::~MWSequenceInputLayerImpl() { } void 16 | MWSequenceInputLayerImpl::propagateSize() { } void 17 | MWSequenceInputLayerImpl::predict() { 18 | #if MW_SEQIP_TAP 19 | MWTensorBase* opTensorBase = getLayer()->getOutputTensor(0); MWTensor* 20 | opTensor = static_cast*>(opTensorBase); 21 | mw_interm_tap(opTensor->getData(), opTensor->getNumElements(), tap_count++); 22 | #endif 23 | } -------------------------------------------------------------------------------- /arm_compute/MWSequenceInputLayerImpl.hpp: -------------------------------------------------------------------------------- 1 | /* Copyright 2019 The MathWorks, Inc. */ 2 | 3 | #ifndef _MW_ARMNEON_SEQINPUT_LAYER_IMPL_ 4 | #define _MW_ARMNEON_SEQINPUT_LAYER_IMPL_ 5 | 6 | #include "MWCNNLayerImpl.hpp" 7 | 8 | class MWCNNLayer; 9 | class MWTargetNetworkImpl; 10 | 11 | /** 12 | * Codegen class for Sequence Input layer implementation 13 | */ 14 | class MWSequenceInputLayerImpl : public MWCNNLayerImpl { 15 | public: 16 | MWSequenceInputLayerImpl(MWCNNLayer*, MWTargetNetworkImpl*); 17 | ~MWSequenceInputLayerImpl(); 18 | void predict(); 19 | 20 | private: 21 | void propagateSize(); 22 | }; 23 | 24 | #endif 25 | -------------------------------------------------------------------------------- /arm_compute/MWTargetNetworkImpl.cpp: -------------------------------------------------------------------------------- 1 | #include "MWTargetNetworkImpl.hpp" 2 | #include "MWTensorBase.hpp" 3 | #include "MWTensor.hpp" 4 | #include "MWCNNLayer.hpp" 5 | #include "MWCNNLayerImpl.hpp" 6 | void MWTargetNetworkImpl::allocate(int numBufsToAlloc, MWCNNLayer* 7 | layers[],int numLayers, int maxCustomLayerBufSize) { numBufs = numBufsToAlloc; 8 | maxBufSize = static_cast(maxCustomLayerBufSize); for(int i = 0; i < 9 | numLayers; i++) { auto owningLayerImpl = layers[i]->getImpl(); if 10 | (owningLayerImpl != nullptr){ auto currLayerOpARMTensor = 11 | owningLayerImpl->getCurrentLayerOpArmTensor(); if(currLayerOpARMTensor){ size_t 12 | layerBufSize = 13 | (size_t)((layers[i]->getImpl()->getCurrentLayerOpArmTensor()->info()->total_size()) 14 | / sizeof(float)); maxBufSize = (maxBufSize < layerBufSize) ? layerBufSize : 15 | maxBufSize; } else{ size_t layerBufSize = 16 | (size_t)layers[i]->getOutputTensor()->getNumElements(); maxBufSize = 17 | (maxBufSize < layerBufSize) ? layerBufSize : maxBufSize; } } } for(int i = 0; i 18 | < numBufs; i++) { ALLOCATE_MEMORY_BUFFER(); } } void 19 | MWTargetNetworkImpl::allocatePermuteBuffers(int bufSize, int numBufsToAlloc) { 20 | for (int i = 0; i < numBufsToAlloc; i++) { float* memPtr = 0; memPtr = 21 | (float*)calloc(bufSize, sizeof(float)); 22 | nDsbARncmIrIaLubvLVZ.push_back(memPtr); } } float* 23 | MWTargetNetworkImpl::getPermuteBuffer(int bufIndex) { return 24 | nDsbARncmIrIaLubvLVZ[bufIndex]; } float* 25 | MWTargetNetworkImpl::getLayerOutput(MWCNNLayer* layers[], int layerIndex, int 26 | portIndex) { MWTensorBase* opTensor = 27 | layers[layerIndex]->getOutputTensor(portIndex); float* opData = 28 | getLayerActivation(opTensor); return opData; } float* 29 | MWTargetNetworkImpl::getLayerActivation(MWTensorBase* opTensorBase){ 30 | MWTensor* opTensor = static_cast*>(opTensorBase); auto 31 | owningLayer = opTensor->getOwner(); MWCNNLayerImpl* layerImpl = 32 | owningLayer->getImpl(); if(layerImpl == NULL){ 33 | if(owningLayer->isCustomLayer()){ return 34 | static_cast*>(opTensorBase)->getData(); } else{ return 35 | getLayerActivation(opTensor->getOwner()->getInputTensor()); } } else{ if 36 | (layerImpl->isHandCodedLayer()) { return 37 | static_cast*>(opTensorBase)->getData(); } else { 38 | arm_compute::Tensor* currLayerArmTensor = 39 | layerImpl->getCurrentLayerOpArmTensor(); int layerOutputSize = 40 | opTensor->getNumElements(); float* m_data = (float*)malloc(sizeof(float) * 41 | layerOutputSize); MWACLUtils::fillTensorToBuffer(m_data, 42 | *currLayerArmTensor); memcpy(opTensor->getData(), m_data, layerOutputSize * 43 | sizeof(float)); free(m_data); return opTensor->getData(); } } } void 44 | MWTargetNetworkImpl::createWorkSpace(float** ) { } void 45 | MWTargetNetworkImpl::setWorkSpaceSize(size_t ) { } size_t* 46 | MWTargetNetworkImpl::getWorkSpaceSize() { return NULL; } float* 47 | MWTargetNetworkImpl::getWorkSpace() { return NULL; } void 48 | MWTargetNetworkImpl::deallocate() { for(size_t i = 0; i < memBuffer.size(); 49 | i++) { if(memBuffer[i] != nullptr) { FREE_MEMORY_BUFFER(); } } 50 | memBuffer.clear(); for(size_t i = 0; i < nDsbARncmIrIaLubvLVZ.size(); i++) 51 | { float *memPtr = nDsbARncmIrIaLubvLVZ[i]; if(memPtr) { free(memPtr); } } 52 | nDsbARncmIrIaLubvLVZ.clear(); } void MWTargetNetworkImpl::cleanup() { } -------------------------------------------------------------------------------- /arm_compute/MWTargetNetworkImpl.hpp: -------------------------------------------------------------------------------- 1 | /* Copyright 2017 The MathWorks, Inc. */ 2 | #ifndef CNN_TARGET_NTWK_IMPL 3 | #define CNN_TARGET_NTWK_IMPL 4 | 5 | #include 6 | #include 7 | #include 8 | #include 9 | 10 | class MWCNNLayer; 11 | class MWTensorBase; 12 | 13 | #define MW_TARGET_TYPE_ARMNEON 1 14 | 15 | #define ALLOCATE_MEMORY_BUFFER(){\ 16 | uint8_t *memPtr ;\ 17 | memPtr = (uint8_t*)calloc(maxBufSize,sizeof(float));\ 18 | memBuffer.push_back(memPtr);\ 19 | } 20 | #define FREE_MEMORY_BUFFER(){\ 21 | uint8_t *memPtr = memBuffer[i];\ 22 | free(memPtr);\ 23 | } 24 | 25 | #define FREE_BUFFER_MEMORY(mem_Ptr) \ 26 | { \ 27 | if (mem_Ptr) { \ 28 | free(mem_Ptr); \ 29 | mem_Ptr = nullptr; \ 30 | } \ 31 | } 32 | #define GET_BUFFER(mem_ptr) mem_ptr 33 | #define CREATE_BUFFER(size) (float*)malloc(size * sizeof(float)) 34 | #define CREATE_BUFFER_INT8(size) (signed char*)malloc(size * sizeof(signed char)) 35 | 36 | class MWTargetNetworkImpl { 37 | public: 38 | MWTargetNetworkImpl() { 39 | } 40 | ~MWTargetNetworkImpl() { 41 | } 42 | void allocate(int, MWCNNLayer* layers[], int numLayers, int maxCustomLayerBufSize); 43 | void deallocate(); 44 | void preSetup(){} 45 | void postSetup(){} 46 | 47 | void setWorkSpaceSize(size_t); // Set the workspace size of this layer and previous layers 48 | size_t* getWorkSpaceSize(); // Get the workspace size of this layer and previous layers 49 | float* getWorkSpace(); // Get the workspace buffer in GPU memory 50 | void cleanup(); 51 | void createWorkSpace(float**); // Create the workspace needed for this layer 52 | float* getLayerOutput(MWCNNLayer *layers[], int layerIndex, int portIndex); 53 | float* getLayerActivation(MWTensorBase*); 54 | size_t maxBufSize; 55 | int numBufs=0; 56 | std::vector memBuffer; 57 | 58 | float* getPermuteBuffer(int index); // Get the buffer for custom layers' data layout permutation 59 | void allocatePermuteBuffers(int, int); // allocate buffer for custom layers' data layout permutation 60 | 61 | private: 62 | std::vector nDsbARncmIrIaLubvLVZ; 63 | 64 | }; 65 | #endif 66 | -------------------------------------------------------------------------------- /arm_compute/ProcessConstructorArguments.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: ProcessConstructorArguments.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef PROCESSCONSTRUCTORARGUMENTS_H 8 | #define PROCESSCONSTRUCTORARGUMENTS_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | #endif 16 | 17 | // 18 | // File trailer for ProcessConstructorArguments.h 19 | // 20 | // [EOF] 21 | // 22 | -------------------------------------------------------------------------------- /arm_compute/STFTCG.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: STFTCG.cpp 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | 8 | // Include Files 9 | #include "STFTCG.h" 10 | #include "DeepLearningNetwork.h" 11 | #include "STFTSysObj.h" 12 | #include "SystemCore.h" 13 | #include "matlabCodegenHandle.h" 14 | #include "rt_nonfinite.h" 15 | #include "streamingClassifier.h" 16 | 17 | // Function Definitions 18 | 19 | // 20 | // Arguments : const float u[256] 21 | // creal32_T y_data[] 22 | // int y_size[2] 23 | // Return Type : void 24 | // 25 | void dsp_private_STFTCG::step(const float u[256], creal32_T y_data[], int 26 | y_size[2]) 27 | { 28 | this->pObj.step(u, y_data, y_size); 29 | } 30 | 31 | // 32 | // Arguments : void 33 | // Return Type : dsp_private_STFTCG * 34 | // 35 | dsp_private_STFTCG *dsp_private_STFTCG::init() 36 | { 37 | dsp_private_STFTCG *obj; 38 | obj = this; 39 | obj->pObj.init(); 40 | obj->matlabCodegenIsDeleted = false; 41 | return obj; 42 | } 43 | 44 | // 45 | // Arguments : const float u[256] 46 | // creal32_T Y_data[] 47 | // int Y_size[2] 48 | // Return Type : void 49 | // 50 | void dsp_private_STFTCG::parenReference(const float u[256], creal32_T Y_data[], 51 | int Y_size[2]) 52 | { 53 | this->step(u, Y_data, Y_size); 54 | } 55 | 56 | // 57 | // File trailer for STFTCG.cpp 58 | // 59 | // [EOF] 60 | // 61 | -------------------------------------------------------------------------------- /arm_compute/STFTCG.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: STFTCG.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef STFTCG_H 8 | #define STFTCG_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | #endif 16 | 17 | // 18 | // File trailer for STFTCG.h 19 | // 20 | // [EOF] 21 | // 22 | -------------------------------------------------------------------------------- /arm_compute/STFTSysObj.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: STFTSysObj.cpp 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | 8 | // Include Files 9 | #include "STFTSysObj.h" 10 | #include "AsyncBuffercg.h" 11 | #include "DeepLearningNetwork.h" 12 | #include "FFTImplementationCallback.h" 13 | #include "ProcessConstructorArguments.h" 14 | #include "matlabCodegenHandle.h" 15 | #include "rt_nonfinite.h" 16 | #include "streamingClassifier.h" 17 | #include 18 | 19 | // Function Definitions 20 | 21 | // 22 | // Arguments : void 23 | // Return Type : dsp_private_STFTSysObj * 24 | // 25 | dsp_private_STFTSysObj *dsp_private_STFTSysObj::init() 26 | { 27 | dsp_private_STFTSysObj *obj; 28 | obj = this; 29 | obj->isInitialized = 0; 30 | ProcessConstructorArguments::b_do((obj)); 31 | obj->pNumChans = -1; 32 | obj->matlabCodegenIsDeleted = false; 33 | return obj; 34 | } 35 | 36 | // 37 | // Arguments : const float u[256] 38 | // creal32_T Y_data[] 39 | // int Y_size[2] 40 | // Return Type : void 41 | // 42 | void dsp_private_STFTSysObj::stepImpl(const float u[256], creal32_T Y_data[], 43 | int Y_size[2]) 44 | { 45 | float y_data[1024]; 46 | int y_size[1]; 47 | float y[512]; 48 | creal32_T b_y[512]; 49 | this->pBuff.write(u); 50 | if (this->pBuff.get_NumUnreadSamples() >= 512) { 51 | this->pBuff.read(y_data, y_size); 52 | for (int i = 0; i < 512; i++) { 53 | y[i] = y_data[i] * this->pWindow[i]; 54 | } 55 | 56 | FFTImplementationCallback::doHalfLengthRadix2((y), (b_y)); 57 | Y_size[0] = 512; 58 | Y_size[1] = 1; 59 | std::memcpy(&Y_data[0], &b_y[0], 512U * sizeof(creal32_T)); 60 | } else { 61 | Y_size[0] = 512; 62 | Y_size[1] = 0; 63 | } 64 | } 65 | 66 | // 67 | // File trailer for STFTSysObj.cpp 68 | // 69 | // [EOF] 70 | // 71 | -------------------------------------------------------------------------------- /arm_compute/STFTSysObj.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: STFTSysObj.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef STFTSYSOBJ_H 8 | #define STFTSYSOBJ_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | #endif 16 | 17 | // 18 | // File trailer for STFTSysObj.h 19 | // 20 | // [EOF] 21 | // 22 | -------------------------------------------------------------------------------- /arm_compute/SystemCore.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: SystemCore.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef SYSTEMCORE_H 8 | #define SYSTEMCORE_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | #endif 16 | 17 | // 18 | // File trailer for SystemCore.h 19 | // 20 | // [EOF] 21 | // 22 | -------------------------------------------------------------------------------- /arm_compute/SystemProp.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: SystemProp.cpp 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | 8 | // Include Files 9 | #include "SystemProp.h" 10 | #include "DeepLearningNetwork.h" 11 | #include "SystemCore.h" 12 | #include "matlabCodegenHandle.h" 13 | #include "rt_nonfinite.h" 14 | #include "streamingClassifier.h" 15 | 16 | // Function Definitions 17 | 18 | // 19 | // Arguments : dsp_private_STFTSysObj *obj 20 | // Return Type : void 21 | // 22 | void SystemProp::matlabCodegenNotifyAnyProp(dsp_private_STFTSysObj *obj) 23 | { 24 | if (obj->isLockedAndNotReleased()) { 25 | obj->TunablePropsChanged = true; 26 | } 27 | } 28 | 29 | // 30 | // File trailer for SystemProp.cpp 31 | // 32 | // [EOF] 33 | // 34 | -------------------------------------------------------------------------------- /arm_compute/SystemProp.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: SystemProp.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef SYSTEMPROP_H 8 | #define SYSTEMPROP_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | #endif 16 | 17 | // 18 | // File trailer for SystemProp.h 19 | // 20 | // [EOF] 21 | // 22 | -------------------------------------------------------------------------------- /arm_compute/bsxfun.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: bsxfun.cpp 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | 8 | // Include Files 9 | #include "bsxfun.h" 10 | #include "DeepLearningNetwork.h" 11 | #include "matlabCodegenHandle.h" 12 | #include "rt_nonfinite.h" 13 | #include "streamingClassifier.h" 14 | 15 | // Function Definitions 16 | 17 | // 18 | // Arguments : const float a_data[] 19 | // const int a_size[2] 20 | // const float b_data[] 21 | // const int b_size[2] 22 | // float c_data[] 23 | // int c_size[2] 24 | // Return Type : void 25 | // 26 | void b_bsxfun(const float a_data[], const int a_size[2], const float b_data[], 27 | const int b_size[2], float c_data[], int c_size[2]) 28 | { 29 | int b_b_size; 30 | c_size[0] = 257; 31 | if (b_size[1] == 1) { 32 | c_size[1] = static_cast(a_size[1]); 33 | b_b_size = static_cast(a_size[1]); 34 | } else { 35 | c_size[1] = 0; 36 | b_b_size = 0; 37 | } 38 | 39 | if (b_b_size != 0) { 40 | for (b_b_size = 0; b_b_size < 257; b_b_size++) { 41 | c_data[b_b_size] = a_data[b_b_size] - b_data[0]; 42 | } 43 | } 44 | } 45 | 46 | // 47 | // Arguments : const float a_data[] 48 | // const int a_size[2] 49 | // const double b[257] 50 | // float c_data[] 51 | // int c_size[2] 52 | // Return Type : void 53 | // 54 | void bsxfun(const float a_data[], const int a_size[2], const double b[257], 55 | float c_data[], int c_size[2]) 56 | { 57 | c_size[0] = 257; 58 | c_size[1] = static_cast(a_size[1]); 59 | if (static_cast(a_size[1]) != 0) { 60 | for (int k = 0; k < 257; k++) { 61 | c_data[k] = a_data[k] * static_cast(b[k]); 62 | } 63 | } 64 | } 65 | 66 | // 67 | // File trailer for bsxfun.cpp 68 | // 69 | // [EOF] 70 | // 71 | -------------------------------------------------------------------------------- /arm_compute/bsxfun.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: bsxfun.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef BSXFUN_H 8 | #define BSXFUN_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | 16 | // Function Declarations 17 | extern void b_bsxfun(const float a_data[], const int a_size[2], const float 18 | b_data[], const int b_size[2], float c_data[], int c_size[2]); 19 | extern void bsxfun(const float a_data[], const int a_size[2], const double b[257], 20 | float c_data[], int c_size[2]); 21 | 22 | #endif 23 | 24 | // 25 | // File trailer for bsxfun.h 26 | // 27 | // [EOF] 28 | // 29 | -------------------------------------------------------------------------------- /arm_compute/buildInfo.mat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/matlab-deep-learning/Fault-Detection-Using-Deep-Learning-Classification/539670f3868fbf66c51762fff8dc3843f7880242/arm_compute/buildInfo.mat -------------------------------------------------------------------------------- /arm_compute/codeInfo.mat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/matlab-deep-learning/Fault-Detection-Using-Deep-Learning-Classification/539670f3868fbf66c51762fff8dc3843f7880242/arm_compute/codeInfo.mat -------------------------------------------------------------------------------- /arm_compute/codedescriptor.dmr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/matlab-deep-learning/Fault-Detection-Using-Deep-Learning-Classification/539670f3868fbf66c51762fff8dc3843f7880242/arm_compute/codedescriptor.dmr -------------------------------------------------------------------------------- /arm_compute/compileInfo.mat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/matlab-deep-learning/Fault-Detection-Using-Deep-Learning-Classification/539670f3868fbf66c51762fff8dc3843f7880242/arm_compute/compileInfo.mat -------------------------------------------------------------------------------- /arm_compute/examples/main.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: main.h 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | /*************************************************************************/ 9 | /* This automatically generated example C++ main file shows how to call */ 10 | /* entry-point functions that MATLAB Coder generated. You must customize */ 11 | /* this file for your application. Do not modify this file directly. */ 12 | /* Instead, make a copy of this file, modify it, and integrate it into */ 13 | /* your development environment. */ 14 | /* */ 15 | /* This file initializes entry-point function arguments to a default */ 16 | /* size and value before calling the entry-point functions. It does */ 17 | /* not store or use any values returned from the entry-point functions. */ 18 | /* If necessary, it does pre-allocate memory for returned values. */ 19 | /* You can use this file as a starting point for a main function that */ 20 | /* you can deploy in your application. */ 21 | /* */ 22 | /* After you copy the file, and before you deploy it, you must make the */ 23 | /* following changes: */ 24 | /* * For variable-size function arguments, change the example sizes to */ 25 | /* the sizes that your application requires. */ 26 | /* * Change the example values of function arguments to the values that */ 27 | /* your application requires. */ 28 | /* * If the entry-point functions return values, store these values or */ 29 | /* otherwise use them as required by your application. */ 30 | /* */ 31 | /*************************************************************************/ 32 | 33 | #ifndef MAIN_H 34 | #define MAIN_H 35 | 36 | // Include Files 37 | #include "rtwtypes.h" 38 | #include 39 | #include 40 | 41 | // Function Declarations 42 | extern int main(int argc, char **argv); 43 | 44 | #endif 45 | // 46 | // File trailer for main.h 47 | // 48 | // [EOF] 49 | // 50 | -------------------------------------------------------------------------------- /arm_compute/extractFeatures.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: extractFeatures.cpp 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | // Include Files 9 | #include "extractFeatures.h" 10 | #include "rt_nonfinite.h" 11 | #include "streamingClassifier_data.h" 12 | #include "streamingClassifier_types.h" 13 | 14 | // Function Definitions 15 | // 16 | // extractFeatures Extract multiple features from streaming audio 17 | // featureVector = extractFeatures(audioIn) returns audio features 18 | // extracted from audioIn. 19 | // 20 | // Parameters of the audioFeatureExtractor used to generated this 21 | // function must be honored when calling this function. 22 | // - Sample rate of the input should be 16000 Hz. 23 | // - Frame length of the input should be 512 samples. 24 | // - Successive frames of the input should be overlapped by 25 | // 0 samples before calling extractFeatures. 26 | // 27 | // 28 | // % EXAMPLE 1: Extract features 29 | // source = dsp.ColoredNoise(); 30 | // inputBuffer = dsp.AsyncBuffer; 31 | // for ii = 1:10 32 | // audioIn = source(); 33 | // write(inputBuffer,audioIn); 34 | // while inputBuffer.NumUnreadSamples > 512 35 | // x = read(inputBuffer,512,0); 36 | // featureVector = extractFeatures(x); 37 | // % ... do something with featureVector ... 38 | // end 39 | // end 40 | // 41 | // 42 | // % EXAMPLE 2: Generate code 43 | // targetDataType = "single"; 44 | // codegen extractFeatures -args {ones(512,1,targetDataType)} 45 | // source = dsp.ColoredNoise('OutputDataType',targetDataType); 46 | // inputBuffer = dsp.AsyncBuffer; 47 | // for ii = 1:10 48 | // audioIn = source(); 49 | // write(inputBuffer,audioIn); 50 | // while inputBuffer.NumUnreadSamples > 512 51 | // x = read(inputBuffer,512,0); 52 | // featureVector = extractFeatures_mex(x); 53 | // % ... do something with featureVector ... 54 | // end 55 | // end 56 | // 57 | // See also audioFeatureExtractor, dsp.AsyncBuffer, codegen. 58 | // 59 | // Arguments : void 60 | // Return Type : void 61 | // 62 | void extractFeatures_init() 63 | { 64 | config.linearSpectrum.NormalizationFactor = 2.61639143E-5F; 65 | for (int i{0}; i < 257; i++) { 66 | config.OneSidedSpectrumBins[i] = static_cast(i + 1U); 67 | config.linearSpectrum.FrequencyBins[i] = 68 | static_cast(i + 1U); 69 | config.SpectralDescriptorInput.FrequencyVector[i] = 70 | 31.25F * static_cast(i); 71 | } 72 | } 73 | 74 | // 75 | // File trailer for extractFeatures.cpp 76 | // 77 | // [EOF] 78 | // 79 | -------------------------------------------------------------------------------- /arm_compute/extractFeatures.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: extractFeatures.h 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | #ifndef EXTRACTFEATURES_H 9 | #define EXTRACTFEATURES_H 10 | 11 | // Include Files 12 | #include "rtwtypes.h" 13 | #include 14 | #include 15 | 16 | // Function Declarations 17 | void extractFeatures_init(); 18 | 19 | #endif 20 | // 21 | // File trailer for extractFeatures.h 22 | // 23 | // [EOF] 24 | // 25 | -------------------------------------------------------------------------------- /arm_compute/html/report.mldatx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/matlab-deep-learning/Fault-Detection-Using-Deep-Learning-Classification/539670f3868fbf66c51762fff8dc3843f7880242/arm_compute/html/report.mldatx -------------------------------------------------------------------------------- /arm_compute/interface/_coder_streamingClassifier_api.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: _coder_streamingClassifier_api.h 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | #ifndef _CODER_STREAMINGCLASSIFIER_API_H 9 | #define _CODER_STREAMINGCLASSIFIER_API_H 10 | 11 | // Include Files 12 | #include "emlrt.h" 13 | #include "tmwtypes.h" 14 | #include 15 | #include 16 | 17 | // Variable Declarations 18 | extern emlrtCTX emlrtRootTLSGlobal; 19 | extern emlrtContext emlrtContextGlobal; 20 | 21 | // Function Declarations 22 | void streamingClassifier(real32_T audioIn[512], real32_T M[10], real32_T S[10], 23 | real32_T scores[8], real32_T features[10]); 24 | 25 | void streamingClassifier_api(const mxArray *const prhs[3], int32_T nlhs, 26 | const mxArray *plhs[2]); 27 | 28 | void streamingClassifier_atexit(); 29 | 30 | void streamingClassifier_initialize(); 31 | 32 | void streamingClassifier_terminate(); 33 | 34 | void streamingClassifier_xil_shutdown(); 35 | 36 | void streamingClassifier_xil_terminate(); 37 | 38 | #endif 39 | // 40 | // File trailer for _coder_streamingClassifier_api.h 41 | // 42 | // [EOF] 43 | // 44 | -------------------------------------------------------------------------------- /arm_compute/interface/_coder_streamingClassifier_info.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: _coder_streamingClassifier_info.h 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | #ifndef _CODER_STREAMINGCLASSIFIER_INFO_H 9 | #define _CODER_STREAMINGCLASSIFIER_INFO_H 10 | 11 | // Include Files 12 | #include "mex.h" 13 | 14 | // Function Declarations 15 | MEXFUNCTION_LINKAGE mxArray *emlrtMexFcnProperties(); 16 | 17 | #endif 18 | // 19 | // File trailer for _coder_streamingClassifier_info.h 20 | // 21 | // [EOF] 22 | // 23 | -------------------------------------------------------------------------------- /arm_compute/interface/_coder_streamingClassifier_mex.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: _coder_streamingClassifier_mex.h 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | #ifndef _CODER_STREAMINGCLASSIFIER_MEX_H 9 | #define _CODER_STREAMINGCLASSIFIER_MEX_H 10 | 11 | // Include Files 12 | #include "emlrt.h" 13 | #include "mex.h" 14 | #include "tmwtypes.h" 15 | 16 | // Function Declarations 17 | MEXFUNCTION_LINKAGE void mexFunction(int32_T nlhs, mxArray *plhs[], 18 | int32_T nrhs, const mxArray *prhs[]); 19 | 20 | emlrtCTX mexFunctionCreateRootTLS(); 21 | 22 | void unsafe_streamingClassifier_mexFunction(int32_T nlhs, mxArray *plhs[2], 23 | int32_T nrhs, 24 | const mxArray *prhs[3]); 25 | 26 | #endif 27 | // 28 | // File trailer for _coder_streamingClassifier_mex.h 29 | // 30 | // [EOF] 31 | // 32 | -------------------------------------------------------------------------------- /arm_compute/matlabCodegenHandle.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: matlabCodegenHandle.cpp 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | 8 | // Include Files 9 | #include "matlabCodegenHandle.h" 10 | #include "DeepLearningNetwork.h" 11 | #include "SystemCore.h" 12 | #include "rt_nonfinite.h" 13 | #include "streamingClassifier.h" 14 | 15 | // Function Definitions 16 | 17 | // 18 | // Arguments : void 19 | // Return Type : void 20 | // 21 | dsp_private_STFTCG::~dsp_private_STFTCG() 22 | { 23 | this->matlabCodegenDestructor(); 24 | } 25 | 26 | // 27 | // Arguments : void 28 | // Return Type : void 29 | // 30 | dsp_private_STFTSysObj::~dsp_private_STFTSysObj() 31 | { 32 | this->matlabCodegenDestructor(); 33 | } 34 | 35 | // 36 | // Arguments : void 37 | // Return Type : void 38 | // 39 | dsp_private_AsyncBuffercg::~dsp_private_AsyncBuffercg() 40 | { 41 | this->matlabCodegenDestructor(); 42 | } 43 | 44 | // 45 | // Arguments : void 46 | // Return Type : void 47 | // 48 | dsp_private_AsyncBuffercgHelper::~dsp_private_AsyncBuffercgHelper() 49 | { 50 | this->matlabCodegenDestructor(); 51 | } 52 | 53 | // 54 | // Arguments : void 55 | // Return Type : void 56 | // 57 | void dsp_private_STFTCG::matlabCodegenDestructor() 58 | { 59 | if (!this->matlabCodegenIsDeleted) { 60 | this->matlabCodegenIsDeleted = true; 61 | } 62 | } 63 | 64 | // 65 | // Arguments : void 66 | // Return Type : void 67 | // 68 | void dsp_private_STFTSysObj::matlabCodegenDestructor() 69 | { 70 | if (!this->matlabCodegenIsDeleted) { 71 | this->matlabCodegenIsDeleted = true; 72 | this->release(); 73 | } 74 | } 75 | 76 | // 77 | // Arguments : void 78 | // Return Type : void 79 | // 80 | void dsp_private_AsyncBuffercg::matlabCodegenDestructor() 81 | { 82 | if (!this->matlabCodegenIsDeleted) { 83 | this->matlabCodegenIsDeleted = true; 84 | } 85 | } 86 | 87 | // 88 | // Arguments : void 89 | // Return Type : void 90 | // 91 | void dsp_private_AsyncBuffercgHelper::matlabCodegenDestructor() 92 | { 93 | if (!this->matlabCodegenIsDeleted) { 94 | this->matlabCodegenIsDeleted = true; 95 | this->release(); 96 | } 97 | } 98 | 99 | // 100 | // File trailer for matlabCodegenHandle.cpp 101 | // 102 | // [EOF] 103 | // 104 | -------------------------------------------------------------------------------- /arm_compute/matlabCodegenHandle.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: matlabCodegenHandle.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef MATLABCODEGENHANDLE_H 8 | #define MATLABCODEGENHANDLE_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | #endif 16 | 17 | // 18 | // File trailer for matlabCodegenHandle.h 19 | // 20 | // [EOF] 21 | // 22 | -------------------------------------------------------------------------------- /arm_compute/predictAndUpdateState.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: predictAndUpdateState.cpp 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | // Include Files 9 | #include "predictAndUpdateState.h" 10 | #include "DeepLearningNetwork.h" 11 | #include "rt_nonfinite.h" 12 | #include "streamingClassifier_internal_types.h" 13 | #include 14 | 15 | // Function Definitions 16 | // 17 | // Arguments : TrainedModel0_0 *obj 18 | // const float indata[10] 19 | // float out[8] 20 | // Return Type : void 21 | // 22 | namespace coder { 23 | void DeepLearningNetwork_predictAndUpdateState(TrainedModel0_0 *obj, 24 | const float indata[10], 25 | float out[8]) 26 | { 27 | obj->setSize(1); 28 | memcpy(obj->getInputDataPointer(0), indata, obj->getLayerOutputSize(0, 0)); 29 | obj->predict(); 30 | memcpy(out, obj->getLayerOutput(5, 0), obj->getLayerOutputSize(5, 0)); 31 | obj->updateState(); 32 | } 33 | 34 | } // namespace coder 35 | 36 | // 37 | // File trailer for predictAndUpdateState.cpp 38 | // 39 | // [EOF] 40 | // 41 | -------------------------------------------------------------------------------- /arm_compute/predictAndUpdateState.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: predictAndUpdateState.h 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | #ifndef PREDICTANDUPDATESTATE_H 9 | #define PREDICTANDUPDATESTATE_H 10 | 11 | // Include Files 12 | #include "rtwtypes.h" 13 | #include 14 | #include 15 | 16 | // Type Declarations 17 | class TrainedModel0_0; 18 | 19 | // Function Declarations 20 | namespace coder { 21 | void DeepLearningNetwork_predictAndUpdateState(TrainedModel0_0 *obj, 22 | const float indata[10], 23 | float out[8]); 24 | 25 | } 26 | 27 | #endif 28 | // 29 | // File trailer for predictAndUpdateState.h 30 | // 31 | // [EOF] 32 | // 33 | -------------------------------------------------------------------------------- /arm_compute/rtGetInf.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: rtGetInf.cpp 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | // Abstract: 9 | // MATLAB for code generation function to initialize non-finite, Inf and 10 | // MinusInf 11 | // Include Files 12 | #include "rtGetInf.h" 13 | #include "rt_nonfinite.h" 14 | 15 | // Function: rtGetInf 16 | // ================================================================== 17 | // Abstract: 18 | // Initialize rtInf needed by the generated code. 19 | real_T rtGetInf(void) 20 | { 21 | return rtInf; 22 | } 23 | 24 | // Function: rtGetInfF 25 | // ================================================================= 26 | // Abstract: 27 | // Initialize rtInfF needed by the generated code. 28 | real32_T rtGetInfF(void) 29 | { 30 | return rtInfF; 31 | } 32 | 33 | // Function: rtGetMinusInf 34 | // ============================================================= 35 | // Abstract: 36 | // Initialize rtMinusInf needed by the generated code. 37 | real_T rtGetMinusInf(void) 38 | { 39 | return rtMinusInf; 40 | } 41 | 42 | // Function: rtGetMinusInfF 43 | // ============================================================ 44 | // Abstract: 45 | // Initialize rtMinusInfF needed by the generated code. 46 | real32_T rtGetMinusInfF(void) 47 | { 48 | return rtMinusInfF; 49 | } 50 | 51 | // 52 | // File trailer for rtGetInf.cpp 53 | // 54 | // [EOF] 55 | // 56 | -------------------------------------------------------------------------------- /arm_compute/rtGetInf.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: rtGetInf.h 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | #ifndef RTGETINF_H 9 | #define RTGETINF_H 10 | 11 | // Include Files 12 | #include "rtwtypes.h" 13 | 14 | #ifdef __cplusplus 15 | extern "C" { 16 | #endif 17 | 18 | extern real_T rtGetInf(void); 19 | extern real32_T rtGetInfF(void); 20 | extern real_T rtGetMinusInf(void); 21 | extern real32_T rtGetMinusInfF(void); 22 | 23 | #ifdef __cplusplus 24 | } 25 | #endif 26 | #endif 27 | // 28 | // File trailer for rtGetInf.h 29 | // 30 | // [EOF] 31 | // 32 | -------------------------------------------------------------------------------- /arm_compute/rtGetNaN.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: rtGetNaN.cpp 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | // Abstract: 9 | // MATLAB for code generation function to initialize non-finite, NaN 10 | // Include Files 11 | #include "rtGetNaN.h" 12 | #include "rt_nonfinite.h" 13 | 14 | // Function: rtGetNaN 15 | // ====================================================================== 16 | // Abstract: 17 | // Initialize rtNaN needed by the generated code. 18 | // NaN is initialized as non-signaling. Assumes IEEE. 19 | real_T rtGetNaN(void) 20 | { 21 | return rtNaN; 22 | } 23 | 24 | // Function: rtGetNaNF 25 | // ===================================================================== 26 | // Abstract: 27 | // Initialize rtNaNF needed by the generated code. 28 | // NaN is initialized as non-signaling. Assumes IEEE 29 | real32_T rtGetNaNF(void) 30 | { 31 | return rtNaNF; 32 | } 33 | 34 | // 35 | // File trailer for rtGetNaN.cpp 36 | // 37 | // [EOF] 38 | // 39 | -------------------------------------------------------------------------------- /arm_compute/rtGetNaN.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: rtGetNaN.h 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | #ifndef RTGETNAN_H 9 | #define RTGETNAN_H 10 | 11 | // Include Files 12 | #include "rtwtypes.h" 13 | 14 | #ifdef __cplusplus 15 | extern "C" { 16 | #endif 17 | 18 | extern real_T rtGetNaN(void); 19 | extern real32_T rtGetNaNF(void); 20 | 21 | #ifdef __cplusplus 22 | } 23 | #endif 24 | #endif 25 | // 26 | // File trailer for rtGetNaN.h 27 | // 28 | // [EOF] 29 | // 30 | -------------------------------------------------------------------------------- /arm_compute/rt_nonfinite.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: rt_nonfinite.cpp 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | // Abstract: 9 | // MATLAB for code generation function to initialize non-finites, 10 | // (Inf, NaN and -Inf). 11 | // Include Files 12 | #include "rt_nonfinite.h" 13 | #include 14 | #include 15 | 16 | real_T rtNaN{std::numeric_limits::quiet_NaN()}; 17 | real_T rtInf{std::numeric_limits::infinity()}; 18 | real_T rtMinusInf{-std::numeric_limits::infinity()}; 19 | real32_T rtNaNF{std::numeric_limits::quiet_NaN()}; 20 | real32_T rtInfF{std::numeric_limits::infinity()}; 21 | real32_T rtMinusInfF{-std::numeric_limits::infinity()}; 22 | 23 | // 24 | // File trailer for rt_nonfinite.cpp 25 | // 26 | // [EOF] 27 | // 28 | -------------------------------------------------------------------------------- /arm_compute/rt_nonfinite.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: rt_nonfinite.h 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | #ifndef RT_NONFINITE_H 9 | #define RT_NONFINITE_H 10 | 11 | // Include Files 12 | #include "rtwtypes.h" 13 | 14 | #ifdef __cplusplus 15 | extern "C" { 16 | #endif 17 | 18 | extern real_T rtInf; 19 | extern real_T rtMinusInf; 20 | extern real_T rtNaN; 21 | extern real32_T rtInfF; 22 | extern real32_T rtMinusInfF; 23 | extern real32_T rtNaNF; 24 | 25 | #ifdef __cplusplus 26 | } 27 | #endif 28 | #endif 29 | // 30 | // File trailer for rt_nonfinite.h 31 | // 32 | // [EOF] 33 | // 34 | -------------------------------------------------------------------------------- /arm_compute/setup_msvc.bat: -------------------------------------------------------------------------------- 1 | set "VSCMD_START_DIR=%CD%" 2 | "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\VCVARSALL.BAT " amd64 -------------------------------------------------------------------------------- /arm_compute/spectralCentroid.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralCentroid.cpp 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | 8 | // Include Files 9 | #include "spectralCentroid.h" 10 | #include "DeepLearningNetwork.h" 11 | #include "matlabCodegenHandle.h" 12 | #include "rt_nonfinite.h" 13 | #include "streamingClassifier.h" 14 | 15 | // Function Definitions 16 | 17 | // 18 | // Arguments : const float x_data[] 19 | // const int x_size[2] 20 | // const double f[257] 21 | // float c_data[] 22 | // int c_size[1] 23 | // Return Type : void 24 | // 25 | void spectralCentroid(const float x_data[], const int x_size[2], const double f 26 | [257], float c_data[], int c_size[1]) 27 | { 28 | int k; 29 | int centroid_size_idx_1; 30 | float b_c_data[257]; 31 | float b_f; 32 | float centroid_data[1]; 33 | float y_data[1]; 34 | if (static_cast(x_size[1]) == 0) { 35 | centroid_size_idx_1 = 0; 36 | } else { 37 | for (k = 0; k < 257; k++) { 38 | b_c_data[k] = x_data[k] * static_cast(f[k]); 39 | } 40 | 41 | centroid_size_idx_1 = 1; 42 | b_f = b_c_data[0]; 43 | for (k = 0; k < 256; k++) { 44 | b_f += b_c_data[k + 1]; 45 | } 46 | 47 | centroid_data[0] = b_f; 48 | } 49 | 50 | if (x_size[1] != 0) { 51 | b_f = x_data[0]; 52 | for (k = 0; k < 256; k++) { 53 | b_f += x_data[k + 1]; 54 | } 55 | 56 | y_data[0] = b_f; 57 | } 58 | 59 | k = centroid_size_idx_1 - 1; 60 | for (int i = 0; i <= k; i++) { 61 | centroid_data[0] /= y_data[0]; 62 | } 63 | 64 | c_size[0] = centroid_size_idx_1; 65 | if (0 <= centroid_size_idx_1 - 1) { 66 | c_data[0] = centroid_data[0]; 67 | } 68 | } 69 | 70 | // 71 | // File trailer for spectralCentroid.cpp 72 | // 73 | // [EOF] 74 | // 75 | -------------------------------------------------------------------------------- /arm_compute/spectralCentroid.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralCentroid.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef SPECTRALCENTROID_H 8 | #define SPECTRALCENTROID_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | 16 | // Function Declarations 17 | extern void spectralCentroid(const float x_data[], const int x_size[2], const 18 | double f[257], float c_data[], int c_size[1]); 19 | 20 | #endif 21 | 22 | // 23 | // File trailer for spectralCentroid.h 24 | // 25 | // [EOF] 26 | // 27 | -------------------------------------------------------------------------------- /arm_compute/spectralCrest.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralCrest.cpp 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | 8 | // Include Files 9 | #include "spectralCrest.h" 10 | #include "DeepLearningNetwork.h" 11 | #include "matlabCodegenHandle.h" 12 | #include "rt_nonfinite.h" 13 | #include "streamingClassifier.h" 14 | #include 15 | 16 | // Function Definitions 17 | 18 | // 19 | // Arguments : const float x_data[] 20 | // const int x_size[2] 21 | // float crest_data[] 22 | // int crest_size[1] 23 | // Return Type : void 24 | // 25 | void spectralCrest(const float x_data[], const int x_size[2], float crest_data[], 26 | int crest_size[1]) 27 | { 28 | int p_size_idx_1; 29 | float a; 30 | int i; 31 | float p_data[1]; 32 | float y_data[1]; 33 | p_size_idx_1 = x_size[1]; 34 | if (x_size[1] >= 1) { 35 | a = x_data[0]; 36 | for (i = 0; i < 256; i++) { 37 | float b; 38 | b = x_data[i + 1]; 39 | if ((!rtIsNaNF(b)) && (rtIsNaNF(a) || (a < b))) { 40 | a = b; 41 | } 42 | } 43 | 44 | p_data[0] = a; 45 | } 46 | 47 | if (x_size[1] != 0) { 48 | a = x_data[0]; 49 | for (i = 0; i < 256; i++) { 50 | a += x_data[i + 1]; 51 | } 52 | 53 | y_data[0] = a; 54 | } 55 | 56 | i = x_size[1] - 1; 57 | for (int b_i = 0; b_i <= i; b_i++) { 58 | p_data[b_i] /= y_data[b_i] / 257.0F; 59 | } 60 | 61 | crest_size[0] = x_size[1]; 62 | if (0 <= p_size_idx_1 - 1) { 63 | std::memcpy(&crest_data[0], &p_data[0], p_size_idx_1 * sizeof(float)); 64 | } 65 | } 66 | 67 | // 68 | // File trailer for spectralCrest.cpp 69 | // 70 | // [EOF] 71 | // 72 | -------------------------------------------------------------------------------- /arm_compute/spectralCrest.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralCrest.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef SPECTRALCREST_H 8 | #define SPECTRALCREST_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | 16 | // Function Declarations 17 | extern void spectralCrest(const float x_data[], const int x_size[2], float 18 | crest_data[], int crest_size[1]); 19 | 20 | #endif 21 | 22 | // 23 | // File trailer for spectralCrest.h 24 | // 25 | // [EOF] 26 | // 27 | -------------------------------------------------------------------------------- /arm_compute/spectralDecrease.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralDecrease.cpp 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | 8 | // Include Files 9 | #include "spectralDecrease.h" 10 | #include "DeepLearningNetwork.h" 11 | #include "matlabCodegenHandle.h" 12 | #include "rt_nonfinite.h" 13 | #include "streamingClassifier.h" 14 | 15 | // Function Definitions 16 | 17 | // 18 | // Arguments : const float x_data[] 19 | // const int x_size[2] 20 | // float decrease_data[] 21 | // int decrease_size[1] 22 | // Return Type : void 23 | // 24 | void spectralDecrease(const float x_data[], const int x_size[2], float 25 | decrease_data[], int decrease_size[1]) 26 | { 27 | signed char csz_idx_1; 28 | int k; 29 | int d_size_idx_1; 30 | float c_data[256]; 31 | float b_c_data[256]; 32 | float f; 33 | int npages; 34 | float d_data[1]; 35 | float y_data[1]; 36 | csz_idx_1 = static_cast(x_size[1] == 1); 37 | if (csz_idx_1 != 0) { 38 | for (k = 0; k < 256; k++) { 39 | c_data[k] = x_data[k + 1] - x_data[0]; 40 | } 41 | } 42 | 43 | if (csz_idx_1 == 0) { 44 | d_size_idx_1 = 0; 45 | } else { 46 | for (k = 0; k < 256; k++) { 47 | b_c_data[k] = c_data[k] / (static_cast(k) + 1.0F); 48 | } 49 | 50 | d_size_idx_1 = 1; 51 | f = b_c_data[0]; 52 | for (k = 0; k < 255; k++) { 53 | f += b_c_data[k + 1]; 54 | } 55 | 56 | d_data[0] = f; 57 | } 58 | 59 | if (x_size[1] != 0) { 60 | npages = x_size[1] - 1; 61 | for (int xi = 0; xi <= npages; xi++) { 62 | f = x_data[1]; 63 | for (k = 0; k < 255; k++) { 64 | f += x_data[((k + 1) % 256 + 257 * ((k + 1) / 256)) + 1]; 65 | } 66 | 67 | y_data[0] = f; 68 | } 69 | } 70 | 71 | npages = d_size_idx_1 - 1; 72 | for (k = 0; k <= npages; k++) { 73 | d_data[0] /= y_data[0]; 74 | } 75 | 76 | decrease_size[0] = d_size_idx_1; 77 | if (0 <= d_size_idx_1 - 1) { 78 | decrease_data[0] = d_data[0]; 79 | } 80 | } 81 | 82 | // 83 | // File trailer for spectralDecrease.cpp 84 | // 85 | // [EOF] 86 | // 87 | -------------------------------------------------------------------------------- /arm_compute/spectralDecrease.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralDecrease.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef SPECTRALDECREASE_H 8 | #define SPECTRALDECREASE_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | 16 | // Function Declarations 17 | extern void spectralDecrease(const float x_data[], const int x_size[2], float 18 | decrease_data[], int decrease_size[1]); 19 | 20 | #endif 21 | 22 | // 23 | // File trailer for spectralDecrease.h 24 | // 25 | // [EOF] 26 | // 27 | -------------------------------------------------------------------------------- /arm_compute/spectralEntropy.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralEntropy.cpp 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | 8 | // Include Files 9 | #include "spectralEntropy.h" 10 | #include "DeepLearningNetwork.h" 11 | #include "matlabCodegenHandle.h" 12 | #include "rt_nonfinite.h" 13 | #include "streamingClassifier.h" 14 | #include 15 | 16 | // Function Definitions 17 | 18 | // 19 | // Arguments : const float x_data[] 20 | // const int x_size[2] 21 | // float entropy_data[] 22 | // int entropy_size[1] 23 | // Return Type : void 24 | // 25 | void spectralEntropy(const float x_data[], const int x_size[2], float 26 | entropy_data[], int entropy_size[1]) 27 | { 28 | int e_size_idx_1; 29 | float t; 30 | int k; 31 | int nx; 32 | float e_data[1]; 33 | float X_data[257]; 34 | float tmp_data[257]; 35 | int eint; 36 | if (x_size[1] == 0) { 37 | e_size_idx_1 = 0; 38 | } else { 39 | e_size_idx_1 = 1; 40 | t = x_data[0]; 41 | for (k = 0; k < 256; k++) { 42 | t += x_data[k + 1]; 43 | } 44 | 45 | e_data[0] = t; 46 | } 47 | 48 | if (0 <= e_size_idx_1 - 1) { 49 | for (nx = 0; nx < 257; nx++) { 50 | X_data[nx] = e_data[0]; 51 | } 52 | } 53 | 54 | nx = x_size[0] * x_size[1]; 55 | for (k = 0; k < nx; k++) { 56 | X_data[k] = x_data[k] / X_data[k]; 57 | } 58 | 59 | nx = 257 * x_size[1]; 60 | for (k = 0; k < nx; k++) { 61 | if (X_data[k] == 0.0F) { 62 | tmp_data[k] = rtMinusInfF; 63 | } else if (X_data[k] < 0.0F) { 64 | tmp_data[k] = rtNaNF; 65 | } else { 66 | bool b; 67 | bool b1; 68 | b = !rtIsInfF(X_data[k]); 69 | b1 = !rtIsNaNF(X_data[k]); 70 | if (b && b1) { 71 | float inte; 72 | t = std::frexp(X_data[k], &eint); 73 | inte = static_cast(eint); 74 | if (t == 0.5F) { 75 | tmp_data[k] = inte - 1.0F; 76 | } else if ((inte == 1.0F) && (t < 0.75F)) { 77 | tmp_data[k] = std::log(2.0F * t) / 0.693147182F; 78 | } else { 79 | tmp_data[k] = std::log(t) / 0.693147182F + inte; 80 | } 81 | } else { 82 | tmp_data[k] = X_data[k]; 83 | } 84 | } 85 | } 86 | 87 | nx = 257 * x_size[1]; 88 | for (k = 0; k < nx; k++) { 89 | X_data[k] *= tmp_data[k]; 90 | } 91 | 92 | if (x_size[1] == 0) { 93 | e_size_idx_1 = 0; 94 | } else { 95 | e_size_idx_1 = 1; 96 | if (rtIsNaNF(X_data[0])) { 97 | e_data[0] = 0.0F; 98 | } else { 99 | e_data[0] = X_data[0]; 100 | } 101 | 102 | for (k = 0; k < 256; k++) { 103 | t = X_data[k + 1]; 104 | if (!rtIsNaNF(t)) { 105 | e_data[0] += t; 106 | } 107 | } 108 | } 109 | 110 | nx = e_size_idx_1 - 1; 111 | for (k = 0; k <= nx; k++) { 112 | e_data[0] = -e_data[0] / 8.00562477F; 113 | } 114 | 115 | entropy_size[0] = e_size_idx_1; 116 | if (0 <= e_size_idx_1 - 1) { 117 | entropy_data[0] = e_data[0]; 118 | } 119 | } 120 | 121 | // 122 | // File trailer for spectralEntropy.cpp 123 | // 124 | // [EOF] 125 | // 126 | -------------------------------------------------------------------------------- /arm_compute/spectralEntropy.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralEntropy.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef SPECTRALENTROPY_H 8 | #define SPECTRALENTROPY_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | 16 | // Function Declarations 17 | extern void spectralEntropy(const float x_data[], const int x_size[2], float 18 | entropy_data[], int entropy_size[1]); 19 | 20 | #endif 21 | 22 | // 23 | // File trailer for spectralEntropy.h 24 | // 25 | // [EOF] 26 | // 27 | -------------------------------------------------------------------------------- /arm_compute/spectralFlatness.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralFlatness.cpp 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | 8 | // Include Files 9 | #include "spectralFlatness.h" 10 | #include "DeepLearningNetwork.h" 11 | #include "matlabCodegenHandle.h" 12 | #include "rt_nonfinite.h" 13 | #include "streamingClassifier.h" 14 | #include 15 | 16 | // Function Definitions 17 | 18 | // 19 | // Arguments : const float x_data[] 20 | // const int x_size[2] 21 | // float flatness_data[] 22 | // int flatness_size[1] 23 | // Return Type : void 24 | // 25 | void spectralFlatness(const float x_data[], const int x_size[2], float 26 | flatness_data[], int flatness_size[1]) 27 | { 28 | int nx; 29 | int k; 30 | float b_x_data[257]; 31 | int g_size_idx_1; 32 | float f; 33 | float g_data[1]; 34 | float y_data[1]; 35 | nx = x_size[0] * x_size[1]; 36 | for (k = 0; k < nx; k++) { 37 | b_x_data[k] = x_data[k] + 1.1920929E-7F; 38 | } 39 | 40 | nx = 257 * x_size[1]; 41 | for (k = 0; k < nx; k++) { 42 | b_x_data[k] = std::log(b_x_data[k]); 43 | } 44 | 45 | if (x_size[1] == 0) { 46 | g_size_idx_1 = 0; 47 | } else { 48 | g_size_idx_1 = 1; 49 | f = b_x_data[0]; 50 | for (k = 0; k < 256; k++) { 51 | f += b_x_data[k + 1]; 52 | } 53 | 54 | g_data[0] = f; 55 | } 56 | 57 | nx = g_size_idx_1 - 1; 58 | for (k = 0; k <= nx; k++) { 59 | g_data[0] /= 257.0F; 60 | } 61 | 62 | for (k = 0; k < g_size_idx_1; k++) { 63 | g_data[0] = std::exp(g_data[0]); 64 | } 65 | 66 | if (x_size[1] != 0) { 67 | f = x_data[0]; 68 | for (k = 0; k < 256; k++) { 69 | f += x_data[k + 1]; 70 | } 71 | 72 | y_data[0] = f; 73 | } 74 | 75 | nx = g_size_idx_1 - 1; 76 | for (k = 0; k <= nx; k++) { 77 | g_data[0] /= y_data[0] / 257.0F; 78 | } 79 | 80 | flatness_size[0] = g_size_idx_1; 81 | if (0 <= g_size_idx_1 - 1) { 82 | flatness_data[0] = g_data[0]; 83 | } 84 | } 85 | 86 | // 87 | // File trailer for spectralFlatness.cpp 88 | // 89 | // [EOF] 90 | // 91 | -------------------------------------------------------------------------------- /arm_compute/spectralFlatness.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralFlatness.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef SPECTRALFLATNESS_H 8 | #define SPECTRALFLATNESS_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | 16 | // Function Declarations 17 | extern void spectralFlatness(const float x_data[], const int x_size[2], float 18 | flatness_data[], int flatness_size[1]); 19 | 20 | #endif 21 | 22 | // 23 | // File trailer for spectralFlatness.h 24 | // 25 | // [EOF] 26 | // 27 | -------------------------------------------------------------------------------- /arm_compute/spectralKurtosis.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralKurtosis.cpp 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | 8 | // Include Files 9 | #include "spectralKurtosis.h" 10 | #include "DeepLearningNetwork.h" 11 | #include "matlabCodegenHandle.h" 12 | #include "rt_nonfinite.h" 13 | #include "spectralSkewness.h" 14 | #include "streamingClassifier.h" 15 | #include "streamingClassifier_rtwutil.h" 16 | #include 17 | 18 | // Function Definitions 19 | 20 | // 21 | // Arguments : const float x_data[] 22 | // const int x_size[2] 23 | // const double f[257] 24 | // float k_data[] 25 | // int k_size[1] 26 | // Return Type : void 27 | // 28 | void spectralKurtosis(const float x_data[], const int x_size[2], const double f 29 | [257], float k_data[], int k_size[1]) 30 | { 31 | float b_f; 32 | int k; 33 | int y_size_idx_1; 34 | float y_tmp_data[1]; 35 | float c_data[257]; 36 | int nx; 37 | float spread_data[1]; 38 | float temp_data[257]; 39 | int spread_size_idx_1; 40 | float kurtosis_data[1]; 41 | if (x_size[1] != 0) { 42 | b_f = x_data[0]; 43 | for (k = 0; k < 256; k++) { 44 | b_f += x_data[k + 1]; 45 | } 46 | 47 | y_tmp_data[0] = b_f; 48 | } 49 | 50 | if (static_cast(x_size[1]) == 0) { 51 | y_size_idx_1 = 0; 52 | } else { 53 | for (k = 0; k < 257; k++) { 54 | c_data[k] = x_data[k] * static_cast(f[k]); 55 | } 56 | 57 | y_size_idx_1 = 1; 58 | b_f = c_data[0]; 59 | for (k = 0; k < 256; k++) { 60 | b_f += c_data[k + 1]; 61 | } 62 | 63 | spread_data[0] = b_f; 64 | } 65 | 66 | nx = y_size_idx_1 - 1; 67 | for (k = 0; k <= nx; k++) { 68 | spread_data[0] /= y_tmp_data[0]; 69 | } 70 | 71 | if (y_size_idx_1 != 0) { 72 | for (k = 0; k < 257; k++) { 73 | c_data[k] = static_cast(f[k]) - spread_data[0]; 74 | } 75 | } 76 | 77 | nx = 257 * y_size_idx_1; 78 | for (k = 0; k < nx; k++) { 79 | temp_data[k] = c_data[k] * c_data[k]; 80 | } 81 | 82 | nx = 257 * y_size_idx_1; 83 | for (k = 0; k < nx; k++) { 84 | c_data[k] = temp_data[k] * x_data[k]; 85 | } 86 | 87 | if (y_size_idx_1 == 0) { 88 | spread_size_idx_1 = 0; 89 | } else { 90 | spread_size_idx_1 = 1; 91 | b_f = c_data[0]; 92 | for (k = 0; k < 256; k++) { 93 | b_f += c_data[k + 1]; 94 | } 95 | 96 | spread_data[0] = b_f; 97 | } 98 | 99 | nx = spread_size_idx_1 - 1; 100 | for (k = 0; k <= nx; k++) { 101 | spread_data[0] /= y_tmp_data[0]; 102 | } 103 | 104 | for (k = 0; k < spread_size_idx_1; k++) { 105 | spread_data[0] = std::sqrt(spread_data[0]); 106 | } 107 | 108 | nx = 257 * y_size_idx_1; 109 | for (k = 0; k < nx; k++) { 110 | c_data[k] = temp_data[k] * temp_data[k]; 111 | } 112 | 113 | nx = 257 * y_size_idx_1; 114 | for (k = 0; k < nx; k++) { 115 | c_data[k] *= x_data[k]; 116 | } 117 | 118 | if (y_size_idx_1 == 0) { 119 | y_size_idx_1 = 0; 120 | } else { 121 | y_size_idx_1 = 1; 122 | b_f = c_data[0]; 123 | for (k = 0; k < 256; k++) { 124 | b_f += c_data[k + 1]; 125 | } 126 | 127 | kurtosis_data[0] = b_f; 128 | } 129 | 130 | if (0 <= spread_size_idx_1 - 1) { 131 | spread_data[0] = rt_powf_snf(spread_data[0], 4.0F); 132 | } 133 | 134 | nx = y_size_idx_1 - 1; 135 | for (k = 0; k <= nx; k++) { 136 | kurtosis_data[0] /= spread_data[0] * y_tmp_data[0]; 137 | } 138 | 139 | k_size[0] = y_size_idx_1; 140 | if (0 <= y_size_idx_1 - 1) { 141 | k_data[0] = kurtosis_data[0]; 142 | } 143 | } 144 | 145 | // 146 | // File trailer for spectralKurtosis.cpp 147 | // 148 | // [EOF] 149 | // 150 | -------------------------------------------------------------------------------- /arm_compute/spectralKurtosis.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralKurtosis.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef SPECTRALKURTOSIS_H 8 | #define SPECTRALKURTOSIS_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | 16 | // Function Declarations 17 | extern void spectralKurtosis(const float x_data[], const int x_size[2], const 18 | double f[257], float k_data[], int k_size[1]); 19 | 20 | #endif 21 | 22 | // 23 | // File trailer for spectralKurtosis.h 24 | // 25 | // [EOF] 26 | // 27 | -------------------------------------------------------------------------------- /arm_compute/spectralRolloffPoint.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralRolloffPoint.cpp 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | 8 | // Include Files 9 | #include "spectralRolloffPoint.h" 10 | #include "DeepLearningNetwork.h" 11 | #include "matlabCodegenHandle.h" 12 | #include "rt_nonfinite.h" 13 | #include "streamingClassifier.h" 14 | #include 15 | 16 | // Function Definitions 17 | 18 | // 19 | // Arguments : const float x_data[] 20 | // const int x_size[2] 21 | // const double f[257] 22 | // double rolloffPoint_data[] 23 | // int rolloffPoint_size[1] 24 | // Return Type : void 25 | // 26 | void spectralRolloffPoint(const float x_data[], const int x_size[2], const 27 | double f[257], double rolloffPoint_data[], int rolloffPoint_size[1]) 28 | { 29 | int c_size_idx_1; 30 | int loop_ub; 31 | float c_data[257]; 32 | signed char unnamed_idx_1; 33 | float d_data[1]; 34 | int idx_size_idx_1; 35 | short idx_data[1]; 36 | bool x[257]; 37 | short ii_data_idx_0; 38 | c_size_idx_1 = x_size[1]; 39 | loop_ub = x_size[0] * x_size[1]; 40 | if (0 <= loop_ub - 1) { 41 | std::memcpy(&c_data[0], &x_data[0], loop_ub * sizeof(float)); 42 | } 43 | 44 | if (x_size[1] != 0) { 45 | for (loop_ub = 0; loop_ub < 256; loop_ub++) { 46 | c_data[loop_ub + 1] += c_data[loop_ub]; 47 | } 48 | } 49 | 50 | for (loop_ub = 0; loop_ub < c_size_idx_1; loop_ub++) { 51 | d_data[loop_ub] = c_data[257 * loop_ub + 256] * 0.95F; 52 | } 53 | 54 | unnamed_idx_1 = static_cast(x_size[1]); 55 | idx_size_idx_1 = unnamed_idx_1; 56 | loop_ub = unnamed_idx_1; 57 | if (0 <= loop_ub - 1) { 58 | std::memset(&idx_data[0], 0, loop_ub * sizeof(short)); 59 | } 60 | 61 | if (0 <= c_size_idx_1 - 1) { 62 | for (loop_ub = 0; loop_ub < 257; loop_ub++) { 63 | x[loop_ub] = (c_data[loop_ub] >= d_data[0]); 64 | } 65 | } 66 | 67 | for (int i = 0; i < c_size_idx_1; i++) { 68 | bool exitg1; 69 | loop_ub = 0; 70 | exitg1 = false; 71 | while ((!exitg1) && (loop_ub < 257)) { 72 | if (x[loop_ub]) { 73 | ii_data_idx_0 = static_cast(loop_ub + 1); 74 | exitg1 = true; 75 | } else { 76 | loop_ub++; 77 | } 78 | } 79 | 80 | idx_data[0] = ii_data_idx_0; 81 | } 82 | 83 | rolloffPoint_size[0] = unnamed_idx_1; 84 | for (loop_ub = 0; loop_ub < idx_size_idx_1; loop_ub++) { 85 | rolloffPoint_data[loop_ub] = f[idx_data[loop_ub] - 1]; 86 | } 87 | } 88 | 89 | // 90 | // File trailer for spectralRolloffPoint.cpp 91 | // 92 | // [EOF] 93 | // 94 | -------------------------------------------------------------------------------- /arm_compute/spectralRolloffPoint.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralRolloffPoint.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef SPECTRALROLLOFFPOINT_H 8 | #define SPECTRALROLLOFFPOINT_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | 16 | // Function Declarations 17 | extern void spectralRolloffPoint(const float x_data[], const int x_size[2], 18 | const double f[257], double rolloffPoint_data[], int rolloffPoint_size[1]); 19 | 20 | #endif 21 | 22 | // 23 | // File trailer for spectralRolloffPoint.h 24 | // 25 | // [EOF] 26 | // 27 | -------------------------------------------------------------------------------- /arm_compute/spectralSkewness.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralSkewness.cpp 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | 8 | // Include Files 9 | #include "spectralSkewness.h" 10 | #include "DeepLearningNetwork.h" 11 | #include "matlabCodegenHandle.h" 12 | #include "rt_nonfinite.h" 13 | #include "streamingClassifier.h" 14 | #include "streamingClassifier_rtwutil.h" 15 | #include 16 | 17 | // Function Definitions 18 | 19 | // 20 | // Arguments : const float x_data[] 21 | // const int x_size[2] 22 | // const double f[257] 23 | // float sk_data[] 24 | // int sk_size[1] 25 | // Return Type : void 26 | // 27 | void spectralSkewness(const float x_data[], const int x_size[2], const double f 28 | [257], float sk_data[], int sk_size[1]) 29 | { 30 | float b_f; 31 | int k; 32 | int y_size_idx_1; 33 | float y_tmp_data[1]; 34 | float temp_data[257]; 35 | int nx; 36 | float spread_data[1]; 37 | float y_data[257]; 38 | int spread_size_idx_1; 39 | float skewness_data[1]; 40 | if (x_size[1] != 0) { 41 | b_f = x_data[0]; 42 | for (k = 0; k < 256; k++) { 43 | b_f += x_data[k + 1]; 44 | } 45 | 46 | y_tmp_data[0] = b_f; 47 | } 48 | 49 | if (static_cast(x_size[1]) == 0) { 50 | y_size_idx_1 = 0; 51 | } else { 52 | for (k = 0; k < 257; k++) { 53 | temp_data[k] = x_data[k] * static_cast(f[k]); 54 | } 55 | 56 | y_size_idx_1 = 1; 57 | b_f = temp_data[0]; 58 | for (k = 0; k < 256; k++) { 59 | b_f += temp_data[k + 1]; 60 | } 61 | 62 | spread_data[0] = b_f; 63 | } 64 | 65 | nx = y_size_idx_1 - 1; 66 | for (k = 0; k <= nx; k++) { 67 | spread_data[0] /= y_tmp_data[0]; 68 | } 69 | 70 | if (y_size_idx_1 != 0) { 71 | for (k = 0; k < 257; k++) { 72 | temp_data[k] = static_cast(f[k]) - spread_data[0]; 73 | } 74 | } 75 | 76 | nx = 257 * y_size_idx_1; 77 | for (k = 0; k < nx; k++) { 78 | y_data[k] = temp_data[k] * temp_data[k]; 79 | } 80 | 81 | nx = 257 * y_size_idx_1; 82 | for (k = 0; k < nx; k++) { 83 | y_data[k] *= x_data[k]; 84 | } 85 | 86 | if (y_size_idx_1 == 0) { 87 | spread_size_idx_1 = 0; 88 | } else { 89 | spread_size_idx_1 = 1; 90 | b_f = y_data[0]; 91 | for (k = 0; k < 256; k++) { 92 | b_f += y_data[k + 1]; 93 | } 94 | 95 | spread_data[0] = b_f; 96 | } 97 | 98 | nx = spread_size_idx_1 - 1; 99 | for (k = 0; k <= nx; k++) { 100 | spread_data[0] /= y_tmp_data[0]; 101 | } 102 | 103 | for (k = 0; k < spread_size_idx_1; k++) { 104 | spread_data[0] = std::sqrt(spread_data[0]); 105 | } 106 | 107 | nx = 257 * y_size_idx_1; 108 | for (k = 0; k < nx; k++) { 109 | y_data[k] = rt_powf_snf(temp_data[k], 3.0F); 110 | } 111 | 112 | nx = 257 * y_size_idx_1; 113 | for (k = 0; k < nx; k++) { 114 | y_data[k] *= x_data[k]; 115 | } 116 | 117 | if (y_size_idx_1 == 0) { 118 | y_size_idx_1 = 0; 119 | } else { 120 | y_size_idx_1 = 1; 121 | b_f = y_data[0]; 122 | for (k = 0; k < 256; k++) { 123 | b_f += y_data[k + 1]; 124 | } 125 | 126 | skewness_data[0] = b_f; 127 | } 128 | 129 | if (0 <= spread_size_idx_1 - 1) { 130 | spread_data[0] = rt_powf_snf(spread_data[0], 3.0F); 131 | } 132 | 133 | nx = y_size_idx_1 - 1; 134 | for (k = 0; k <= nx; k++) { 135 | skewness_data[0] /= spread_data[0] * y_tmp_data[0]; 136 | } 137 | 138 | sk_size[0] = y_size_idx_1; 139 | if (0 <= y_size_idx_1 - 1) { 140 | sk_data[0] = skewness_data[0]; 141 | } 142 | } 143 | 144 | // 145 | // File trailer for spectralSkewness.cpp 146 | // 147 | // [EOF] 148 | // 149 | -------------------------------------------------------------------------------- /arm_compute/spectralSkewness.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralSkewness.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef SPECTRALSKEWNESS_H 8 | #define SPECTRALSKEWNESS_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | 16 | // Function Declarations 17 | extern void spectralSkewness(const float x_data[], const int x_size[2], const 18 | double f[257], float sk_data[], int sk_size[1]); 19 | 20 | #endif 21 | 22 | // 23 | // File trailer for spectralSkewness.h 24 | // 25 | // [EOF] 26 | // 27 | -------------------------------------------------------------------------------- /arm_compute/spectralSlope.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralSlope.cpp 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | 8 | // Include Files 9 | #include "spectralSlope.h" 10 | #include "DeepLearningNetwork.h" 11 | #include "bsxfun.h" 12 | #include "matlabCodegenHandle.h" 13 | #include "rt_nonfinite.h" 14 | #include "streamingClassifier.h" 15 | #include "sum.h" 16 | #include 17 | 18 | // Function Definitions 19 | 20 | // 21 | // Arguments : const float x_data[] 22 | // const int x_size[2] 23 | // const double f[257] 24 | // float slope_data[] 25 | // int slope_size[1] 26 | // Return Type : void 27 | // 28 | void spectralSlope(const float x_data[], const int x_size[2], const double f[257], 29 | float slope_data[], int slope_size[1]) 30 | { 31 | double y; 32 | int k; 33 | double x[257]; 34 | double f_minus_mu_f[257]; 35 | float s_data[1]; 36 | int s_size[2]; 37 | int b_s_size[2]; 38 | int i; 39 | float b_s_data[1]; 40 | float tmp_data[257]; 41 | float b_tmp_data[257]; 42 | y = f[0]; 43 | for (k = 0; k < 256; k++) { 44 | y += f[k + 1]; 45 | } 46 | 47 | for (k = 0; k < 257; k++) { 48 | double d; 49 | d = f[k] - y / 257.0; 50 | f_minus_mu_f[k] = d; 51 | x[k] = d * d; 52 | } 53 | 54 | y = x[0]; 55 | for (k = 0; k < 256; k++) { 56 | y += x[k + 1]; 57 | } 58 | 59 | sum(x_data, x_size, s_data, s_size); 60 | b_s_size[0] = 1; 61 | b_s_size[1] = s_size[1]; 62 | k = s_size[0] * s_size[1]; 63 | for (i = 0; i < k; i++) { 64 | b_s_data[i] = s_data[i] / 257.0F; 65 | } 66 | 67 | b_bsxfun(x_data, x_size, b_s_data, b_s_size, tmp_data, s_size); 68 | bsxfun(tmp_data, s_size, f_minus_mu_f, b_tmp_data, b_s_size); 69 | sum(b_tmp_data, b_s_size, s_data, s_size); 70 | k = s_size[0] * s_size[1] - 1; 71 | for (i = 0; i <= k; i++) { 72 | s_data[i] /= static_cast(y); 73 | } 74 | 75 | slope_size[0] = s_size[1]; 76 | k = s_size[1]; 77 | if (0 <= k - 1) { 78 | std::memcpy(&slope_data[0], &s_data[0], k * sizeof(float)); 79 | } 80 | } 81 | 82 | // 83 | // File trailer for spectralSlope.cpp 84 | // 85 | // [EOF] 86 | // 87 | -------------------------------------------------------------------------------- /arm_compute/spectralSlope.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralSlope.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef SPECTRALSLOPE_H 8 | #define SPECTRALSLOPE_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | 16 | // Function Declarations 17 | extern void spectralSlope(const float x_data[], const int x_size[2], const 18 | double f[257], float slope_data[], int slope_size[1]); 19 | 20 | #endif 21 | 22 | // 23 | // File trailer for spectralSlope.h 24 | // 25 | // [EOF] 26 | // 27 | -------------------------------------------------------------------------------- /arm_compute/spectralSpread.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralSpread.cpp 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | 8 | // Include Files 9 | #include "spectralSpread.h" 10 | #include "DeepLearningNetwork.h" 11 | #include "matlabCodegenHandle.h" 12 | #include "rt_nonfinite.h" 13 | #include "streamingClassifier.h" 14 | #include 15 | 16 | // Function Definitions 17 | 18 | // 19 | // Arguments : const float x_data[] 20 | // const int x_size[2] 21 | // const double f[257] 22 | // float s_data[] 23 | // int s_size[1] 24 | // Return Type : void 25 | // 26 | void spectralSpread(const float x_data[], const int x_size[2], const double f 27 | [257], float s_data[], int s_size[1]) 28 | { 29 | float b_f; 30 | int k; 31 | int spread_size_idx_1; 32 | float y_tmp_data[1]; 33 | float c_data[257]; 34 | int nx; 35 | float spread_data[1]; 36 | float y_data[257]; 37 | if (x_size[1] != 0) { 38 | b_f = x_data[0]; 39 | for (k = 0; k < 256; k++) { 40 | b_f += x_data[k + 1]; 41 | } 42 | 43 | y_tmp_data[0] = b_f; 44 | } 45 | 46 | if (static_cast(x_size[1]) == 0) { 47 | spread_size_idx_1 = 0; 48 | } else { 49 | for (k = 0; k < 257; k++) { 50 | c_data[k] = x_data[k] * static_cast(f[k]); 51 | } 52 | 53 | spread_size_idx_1 = 1; 54 | b_f = c_data[0]; 55 | for (k = 0; k < 256; k++) { 56 | b_f += c_data[k + 1]; 57 | } 58 | 59 | spread_data[0] = b_f; 60 | } 61 | 62 | nx = spread_size_idx_1 - 1; 63 | for (k = 0; k <= nx; k++) { 64 | spread_data[0] /= y_tmp_data[0]; 65 | } 66 | 67 | if (spread_size_idx_1 != 0) { 68 | for (k = 0; k < 257; k++) { 69 | c_data[k] = static_cast(f[k]) - spread_data[0]; 70 | } 71 | } 72 | 73 | nx = 257 * spread_size_idx_1; 74 | for (k = 0; k < nx; k++) { 75 | y_data[k] = c_data[k] * c_data[k]; 76 | } 77 | 78 | nx = 257 * spread_size_idx_1; 79 | for (k = 0; k < nx; k++) { 80 | y_data[k] *= x_data[k]; 81 | } 82 | 83 | if (spread_size_idx_1 == 0) { 84 | spread_size_idx_1 = 0; 85 | } else { 86 | spread_size_idx_1 = 1; 87 | b_f = y_data[0]; 88 | for (k = 0; k < 256; k++) { 89 | b_f += y_data[k + 1]; 90 | } 91 | 92 | spread_data[0] = b_f; 93 | } 94 | 95 | nx = spread_size_idx_1 - 1; 96 | for (k = 0; k <= nx; k++) { 97 | spread_data[0] /= y_tmp_data[0]; 98 | } 99 | 100 | for (k = 0; k < spread_size_idx_1; k++) { 101 | spread_data[0] = std::sqrt(spread_data[0]); 102 | } 103 | 104 | s_size[0] = spread_size_idx_1; 105 | if (0 <= spread_size_idx_1 - 1) { 106 | s_data[0] = spread_data[0]; 107 | } 108 | } 109 | 110 | // 111 | // File trailer for spectralSpread.cpp 112 | // 113 | // [EOF] 114 | // 115 | -------------------------------------------------------------------------------- /arm_compute/spectralSpread.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: spectralSpread.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef SPECTRALSPREAD_H 8 | #define SPECTRALSPREAD_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | 16 | // Function Declarations 17 | extern void spectralSpread(const float x_data[], const int x_size[2], const 18 | double f[257], float s_data[], int s_size[1]); 19 | 20 | #endif 21 | 22 | // 23 | // File trailer for spectralSpread.h 24 | // 25 | // [EOF] 26 | // 27 | -------------------------------------------------------------------------------- /arm_compute/streamingClassifier.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: streamingClassifier.h 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | #ifndef STREAMINGCLASSIFIER_H 9 | #define STREAMINGCLASSIFIER_H 10 | 11 | // Include Files 12 | #include "rtwtypes.h" 13 | #include 14 | #include 15 | 16 | // Function Declarations 17 | extern void streamingClassifier(const float audioIn[512], const float M[10], 18 | const float S[10], float scores[8], 19 | float features[10]); 20 | 21 | void streamingClassifier_init(); 22 | 23 | #endif 24 | // 25 | // File trailer for streamingClassifier.h 26 | // 27 | // [EOF] 28 | // 29 | -------------------------------------------------------------------------------- /arm_compute/streamingClassifier_data.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: streamingClassifier_data.cpp 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | // Include Files 9 | #include "streamingClassifier_data.h" 10 | #include "rt_nonfinite.h" 11 | 12 | // Variable Definitions 13 | c_struct_T config; 14 | 15 | bool isInitialized_streamingClassifier{false}; 16 | 17 | // 18 | // File trailer for streamingClassifier_data.cpp 19 | // 20 | // [EOF] 21 | // 22 | -------------------------------------------------------------------------------- /arm_compute/streamingClassifier_data.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: streamingClassifier_data.h 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | #ifndef STREAMINGCLASSIFIER_DATA_H 9 | #define STREAMINGCLASSIFIER_DATA_H 10 | 11 | // Include Files 12 | #include "rtwtypes.h" 13 | #include "streamingClassifier_types.h" 14 | #include 15 | #include 16 | 17 | // Variable Declarations 18 | extern c_struct_T config; 19 | extern bool isInitialized_streamingClassifier; 20 | 21 | #endif 22 | // 23 | // File trailer for streamingClassifier_data.h 24 | // 25 | // [EOF] 26 | // 27 | -------------------------------------------------------------------------------- /arm_compute/streamingClassifier_initialize.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: streamingClassifier_initialize.cpp 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | // Include Files 9 | #include "streamingClassifier_initialize.h" 10 | #include "extractFeatures.h" 11 | #include "rt_nonfinite.h" 12 | #include "streamingClassifier.h" 13 | #include "streamingClassifier_data.h" 14 | 15 | // Function Definitions 16 | // 17 | // Arguments : void 18 | // Return Type : void 19 | // 20 | void streamingClassifier_initialize() 21 | { 22 | streamingClassifier_init(); 23 | extractFeatures_init(); 24 | isInitialized_streamingClassifier = true; 25 | } 26 | 27 | // 28 | // File trailer for streamingClassifier_initialize.cpp 29 | // 30 | // [EOF] 31 | // 32 | -------------------------------------------------------------------------------- /arm_compute/streamingClassifier_initialize.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: streamingClassifier_initialize.h 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | #ifndef STREAMINGCLASSIFIER_INITIALIZE_H 9 | #define STREAMINGCLASSIFIER_INITIALIZE_H 10 | 11 | // Include Files 12 | #include "rtwtypes.h" 13 | #include 14 | #include 15 | 16 | // Function Declarations 17 | extern void streamingClassifier_initialize(); 18 | 19 | #endif 20 | // 21 | // File trailer for streamingClassifier_initialize.h 22 | // 23 | // [EOF] 24 | // 25 | -------------------------------------------------------------------------------- /arm_compute/streamingClassifier_ref.rsp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/matlab-deep-learning/Fault-Detection-Using-Deep-Learning-Classification/539670f3868fbf66c51762fff8dc3843f7880242/arm_compute/streamingClassifier_ref.rsp -------------------------------------------------------------------------------- /arm_compute/streamingClassifier_rtw.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | call "setup_msvc.bat" 4 | 5 | cd . 6 | 7 | if "%1"=="" (nmake -f streamingClassifier_rtw.mk all) else (nmake -f streamingClassifier_rtw.mk %1) 8 | @if errorlevel 1 goto error_exit 9 | 10 | exit 0 11 | 12 | :error_exit 13 | echo The make command returned an error of %errorlevel% 14 | exit 1 15 | -------------------------------------------------------------------------------- /arm_compute/streamingClassifier_rtw.rsp: -------------------------------------------------------------------------------- 1 | AsyncBuffercg.obj 2 | AsyncBuffercgHelper.obj 3 | DeepLearningNetwork.obj 4 | FFTImplementationCallback.obj 5 | MWACLUtils.obj 6 | MWCNNLayerImpl.obj 7 | MWLSTMLayer.obj 8 | MWLSTMLayerImpl.obj 9 | MWSequenceInputLayer.obj 10 | MWSequenceInputLayerImpl.obj 11 | MWTargetNetworkImpl.obj 12 | ProcessConstructorArguments.obj 13 | STFTCG.obj 14 | STFTSysObj.obj 15 | SystemCore.obj 16 | SystemProp.obj 17 | bsxfun.obj 18 | cnn_api.obj 19 | extractFeatures.obj 20 | matlabCodegenHandle.obj 21 | predictAndUpdateState.obj 22 | rtGetInf.obj 23 | rtGetNaN.obj 24 | rt_nonfinite.obj 25 | spectralCentroid.obj 26 | spectralCrest.obj 27 | spectralDecrease.obj 28 | spectralEntropy.obj 29 | spectralFlatness.obj 30 | spectralKurtosis.obj 31 | spectralRolloffPoint.obj 32 | spectralSkewness.obj 33 | spectralSlope.obj 34 | spectralSpread.obj 35 | streamingClassifier.obj 36 | streamingClassifier_data.obj 37 | streamingClassifier_initialize.obj 38 | streamingClassifier_rtwutil.obj 39 | streamingClassifier_terminate.obj 40 | sum.obj 41 | -------------------------------------------------------------------------------- /arm_compute/streamingClassifier_rtw_comp.rsp: -------------------------------------------------------------------------------- 1 | -IQ:\work\aircompressorclassification\arm_compute 2 | -IQ:\work\aircompressorclassification 3 | -I$(ARM_COMPUTELIB) 4 | -I$(ARM_COMPUTELIB)\include 5 | -I"C:\Program Files\MATLAB\R2020a\extern\include" 6 | -------------------------------------------------------------------------------- /arm_compute/streamingClassifier_rtw_ref.rsp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/matlab-deep-learning/Fault-Detection-Using-Deep-Learning-Classification/539670f3868fbf66c51762fff8dc3843f7880242/arm_compute/streamingClassifier_rtw_ref.rsp -------------------------------------------------------------------------------- /arm_compute/streamingClassifier_rtwutil.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: streamingClassifier_rtwutil.cpp 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | 8 | // Include Files 9 | #include "streamingClassifier_rtwutil.h" 10 | #include "rt_nonfinite.h" 11 | #include "streamingClassifier.h" 12 | #include 13 | 14 | // Function Definitions 15 | 16 | // 17 | // Arguments : int b_index 18 | // Return Type : MWTensor * 19 | // 20 | 21 | // 22 | // Arguments : float u0 23 | // float u1 24 | // Return Type : float 25 | // 26 | float rt_powf_snf(float u0, float u1) 27 | { 28 | float y; 29 | if (rtIsNaNF(u0) || rtIsNaNF(u1)) { 30 | y = rtNaNF; 31 | } else { 32 | float f; 33 | float f1; 34 | f = std::abs(u0); 35 | f1 = std::abs(u1); 36 | if (rtIsInfF(u1)) { 37 | if (f == 1.0F) { 38 | y = 1.0F; 39 | } else if (f > 1.0F) { 40 | if (u1 > 0.0F) { 41 | y = rtInfF; 42 | } else { 43 | y = 0.0F; 44 | } 45 | } else if (u1 > 0.0F) { 46 | y = 0.0F; 47 | } else { 48 | y = rtInfF; 49 | } 50 | } else if (f1 == 0.0F) { 51 | y = 1.0F; 52 | } else if (f1 == 1.0F) { 53 | if (u1 > 0.0F) { 54 | y = u0; 55 | } else { 56 | y = 1.0F / u0; 57 | } 58 | } else if (u1 == 2.0F) { 59 | y = u0 * u0; 60 | } else if ((u1 == 0.5F) && (u0 >= 0.0F)) { 61 | y = std::sqrt(u0); 62 | } else if ((u0 < 0.0F) && (u1 > std::floor(u1))) { 63 | y = rtNaNF; 64 | } else { 65 | y = std::pow(u0, u1); 66 | } 67 | } 68 | 69 | return y; 70 | } 71 | 72 | // 73 | // File trailer for streamingClassifier_rtwutil.cpp 74 | // 75 | // [EOF] 76 | // 77 | -------------------------------------------------------------------------------- /arm_compute/streamingClassifier_rtwutil.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: streamingClassifier_rtwutil.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef STREAMINGCLASSIFIER_RTWUTIL_H 8 | #define STREAMINGCLASSIFIER_RTWUTIL_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | 16 | // Function Declarations 17 | extern float rt_powf_snf(float u0, float u1); 18 | 19 | #endif 20 | 21 | // 22 | // File trailer for streamingClassifier_rtwutil.h 23 | // 24 | // [EOF] 25 | // 26 | -------------------------------------------------------------------------------- /arm_compute/streamingClassifier_terminate.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: streamingClassifier_terminate.cpp 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | // Include Files 9 | #include "streamingClassifier_terminate.h" 10 | #include "rt_nonfinite.h" 11 | #include "streamingClassifier_data.h" 12 | 13 | // Function Definitions 14 | // 15 | // Arguments : void 16 | // Return Type : void 17 | // 18 | void streamingClassifier_terminate() 19 | { 20 | // (no terminate code required) 21 | isInitialized_streamingClassifier = false; 22 | } 23 | 24 | // 25 | // File trailer for streamingClassifier_terminate.cpp 26 | // 27 | // [EOF] 28 | // 29 | -------------------------------------------------------------------------------- /arm_compute/streamingClassifier_terminate.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: streamingClassifier_terminate.h 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | #ifndef STREAMINGCLASSIFIER_TERMINATE_H 9 | #define STREAMINGCLASSIFIER_TERMINATE_H 10 | 11 | // Include Files 12 | #include "rtwtypes.h" 13 | #include 14 | #include 15 | 16 | // Function Declarations 17 | extern void streamingClassifier_terminate(); 18 | 19 | #endif 20 | // 21 | // File trailer for streamingClassifier_terminate.h 22 | // 23 | // [EOF] 24 | // 25 | -------------------------------------------------------------------------------- /arm_compute/streamingClassifier_types.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: streamingClassifier_types.h 3 | // 4 | // MATLAB Coder version : 5.2 5 | // C/C++ source code generated on : 19-Mar-2021 15:00:36 6 | // 7 | 8 | #ifndef STREAMINGCLASSIFIER_TYPES_H 9 | #define STREAMINGCLASSIFIER_TYPES_H 10 | 11 | // Include Files 12 | #include "rtwtypes.h" 13 | 14 | // Type Definitions 15 | struct struct_T { 16 | float FrequencyVector[257]; 17 | }; 18 | 19 | struct b_struct_T { 20 | unsigned short FrequencyBins[257]; 21 | float NormalizationFactor; 22 | }; 23 | 24 | struct c_struct_T { 25 | unsigned short OneSidedSpectrumBins[257]; 26 | b_struct_T linearSpectrum; 27 | struct_T SpectralDescriptorInput; 28 | }; 29 | 30 | #endif 31 | // 32 | // File trailer for streamingClassifier_types.h 33 | // 34 | // [EOF] 35 | // 36 | -------------------------------------------------------------------------------- /arm_compute/sum.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // File: sum.cpp 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | 8 | // Include Files 9 | #include "sum.h" 10 | #include "DeepLearningNetwork.h" 11 | #include "matlabCodegenHandle.h" 12 | #include "rt_nonfinite.h" 13 | #include "streamingClassifier.h" 14 | 15 | // Function Definitions 16 | 17 | // 18 | // Arguments : const float x_data[] 19 | // const int x_size[2] 20 | // float y_data[] 21 | // int y_size[2] 22 | // Return Type : void 23 | // 24 | void sum(const float x_data[], const int x_size[2], float y_data[], int y_size[2]) 25 | { 26 | float f; 27 | if (x_size[1] == 0) { 28 | y_size[0] = 1; 29 | y_size[1] = 0; 30 | } else { 31 | y_size[0] = 1; 32 | y_size[1] = 1; 33 | f = x_data[0]; 34 | for (int k = 0; k < 256; k++) { 35 | f += x_data[k + 1]; 36 | } 37 | 38 | y_data[0] = f; 39 | } 40 | } 41 | 42 | // 43 | // File trailer for sum.cpp 44 | // 45 | // [EOF] 46 | // 47 | -------------------------------------------------------------------------------- /arm_compute/sum.h: -------------------------------------------------------------------------------- 1 | // 2 | // File: sum.h 3 | // 4 | // MATLAB Coder version : 5.0 5 | // C/C++ source code generated on : 08-May-2020 10:27:24 6 | // 7 | #ifndef SUM_H 8 | #define SUM_H 9 | 10 | // Include Files 11 | #include 12 | #include 13 | #include "rtwtypes.h" 14 | #include "streamingClassifier_types.h" 15 | 16 | // Function Declarations 17 | extern void sum(const float x_data[], const int x_size[2], float y_data[], int 18 | y_size[2]); 19 | 20 | #endif 21 | 22 | // 23 | // File trailer for sum.h 24 | // 25 | // [EOF] 26 | // 27 | -------------------------------------------------------------------------------- /resources/project/1E-juF5LqehEtfn-hHKKys3-P5I/1klYbmWTBCSlBDao2brjxGx9Ensd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/1E-juF5LqehEtfn-hHKKys3-P5I/1klYbmWTBCSlBDao2brjxGx9Ensp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/1E-juF5LqehEtfn-hHKKys3-P5I/4pZ0d02Y0iUlXKpbyIWdJlZzu8od.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/1E-juF5LqehEtfn-hHKKys3-P5I/4pZ0d02Y0iUlXKpbyIWdJlZzu8op.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/1E-juF5LqehEtfn-hHKKys3-P5I/AoprX6ao4cFeqpj9YMCjNOoIBu0d.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/1E-juF5LqehEtfn-hHKKys3-P5I/AoprX6ao4cFeqpj9YMCjNOoIBu0p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/1E-juF5LqehEtfn-hHKKys3-P5I/IIa34Uv43MU0oPwdFsZbt3J59GEd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/1E-juF5LqehEtfn-hHKKys3-P5I/IIa34Uv43MU0oPwdFsZbt3J59GEp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/1E-juF5LqehEtfn-hHKKys3-P5I/_b8hhhPA47WSt11Gg_ojxbIl4osd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/1E-juF5LqehEtfn-hHKKys3-P5I/_b8hhhPA47WSt11Gg_ojxbIl4osp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/1E-juF5LqehEtfn-hHKKys3-P5I/cp8S662xlRdvpd1wl0o5PZZ5d68d.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/1E-juF5LqehEtfn-hHKKys3-P5I/cp8S662xlRdvpd1wl0o5PZZ5d68p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/1E-juF5LqehEtfn-hHKKys3-P5I/ee-9b1weK989p_zZ-Jz0nuiMhPsd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/1E-juF5LqehEtfn-hHKKys3-P5I/ee-9b1weK989p_zZ-Jz0nuiMhPsp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/EEtUlUb-dLAdf0KpMVivaUlztwA/8Y3ckhe0xfoClMWmHktUIgf4wrAd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/EEtUlUb-dLAdf0KpMVivaUlztwA/8Y3ckhe0xfoClMWmHktUIgf4wrAp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/EEtUlUb-dLAdf0KpMVivaUlztwA/LEFlYYWOqi1f9u2Ha3YincqGBt4d.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/EEtUlUb-dLAdf0KpMVivaUlztwA/LEFlYYWOqi1f9u2Ha3YincqGBt4p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/EEtUlUb-dLAdf0KpMVivaUlztwA/Vi68fGIGrbcDgjSI9PECNKLKueQd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/EEtUlUb-dLAdf0KpMVivaUlztwA/Vi68fGIGrbcDgjSI9PECNKLKueQp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/EEtUlUb-dLAdf0KpMVivaUlztwA/eCliMNQVGeM-qoJeFZw-DHTAKQsd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/EEtUlUb-dLAdf0KpMVivaUlztwA/eCliMNQVGeM-qoJeFZw-DHTAKQsp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/EEtUlUb-dLAdf0KpMVivaUlztwA/lccaOBu-zoc1I4mPSV-wHCCDYnMd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/EEtUlUb-dLAdf0KpMVivaUlztwA/lccaOBu-zoc1I4mPSV-wHCCDYnMp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/EEtUlUb-dLAdf0KpMVivaUlztwA/swOC8nlAydIDsJoFV_49YUTYxAod.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/EEtUlUb-dLAdf0KpMVivaUlztwA/swOC8nlAydIDsJoFV_49YUTYxAop.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/EEtUlUb-dLAdf0KpMVivaUlztwA/tITzuvc92Nm6LqxnPkuz0oOcP0Id.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/EEtUlUb-dLAdf0KpMVivaUlztwA/tITzuvc92Nm6LqxnPkuz0oOcP0Ip.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/KAXfQgCar2Yb8zOxgvf9hdmLP1E/7_yeh-ytgfGaEUZaZEK-iuCMDQod.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/KAXfQgCar2Yb8zOxgvf9hdmLP1E/7_yeh-ytgfGaEUZaZEK-iuCMDQop.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/KAXfQgCar2Yb8zOxgvf9hdmLP1E/O_fUg4-_TdInlB3RdCGLay5yNBkd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/KAXfQgCar2Yb8zOxgvf9hdmLP1E/O_fUg4-_TdInlB3RdCGLay5yNBkp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/KAXfQgCar2Yb8zOxgvf9hdmLP1E/PlAmsLjLOOz5fUKyWV_agtNttO0d.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/KAXfQgCar2Yb8zOxgvf9hdmLP1E/PlAmsLjLOOz5fUKyWV_agtNttO0p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/KAXfQgCar2Yb8zOxgvf9hdmLP1E/TKgbdHpHUByEvCNWoe9YqeXVx5sd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/KAXfQgCar2Yb8zOxgvf9hdmLP1E/TKgbdHpHUByEvCNWoe9YqeXVx5sp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/KAXfQgCar2Yb8zOxgvf9hdmLP1E/Tt-r8g3OoroqCUCxpC-KkuCmZVYd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/KAXfQgCar2Yb8zOxgvf9hdmLP1E/Tt-r8g3OoroqCUCxpC-KkuCmZVYp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/NjSPEMsIuLUyIpr2u1Js5bVPsOs/2kj09UetkV_lru3gvSPXnY6-nM4d.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/NjSPEMsIuLUyIpr2u1Js5bVPsOs/2kj09UetkV_lru3gvSPXnY6-nM4p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/NjSPEMsIuLUyIpr2u1Js5bVPsOs/KKyDJtbdIBOlaeHmIZd5VX6vqx8d.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/NjSPEMsIuLUyIpr2u1Js5bVPsOs/KKyDJtbdIBOlaeHmIZd5VX6vqx8p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/NjSPEMsIuLUyIpr2u1Js5bVPsOs/QWNDYJD5mGW1bWYvPx9DtKnxzw4d.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/NjSPEMsIuLUyIpr2u1Js5bVPsOs/QWNDYJD5mGW1bWYvPx9DtKnxzw4p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/NjSPEMsIuLUyIpr2u1Js5bVPsOs/R1RggVhA72agIvELiuhWPRS8F0Id.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/NjSPEMsIuLUyIpr2u1Js5bVPsOs/R1RggVhA72agIvELiuhWPRS8F0Ip.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/NjSPEMsIuLUyIpr2u1Js5bVPsOs/aEHSZBIY-yve10yGis12Zr5DLZod.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/NjSPEMsIuLUyIpr2u1Js5bVPsOs/aEHSZBIY-yve10yGis12Zr5DLZop.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/NjSPEMsIuLUyIpr2u1Js5bVPsOs/j4xwF_j8iFTVayUMfxLgMnTbencd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/NjSPEMsIuLUyIpr2u1Js5bVPsOs/j4xwF_j8iFTVayUMfxLgMnTbencp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/NjSPEMsIuLUyIpr2u1Js5bVPsOs/r8LR4nLmg9ai3oHrW1r_-KocQzkd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/NjSPEMsIuLUyIpr2u1Js5bVPsOs/r8LR4nLmg9ai3oHrW1r_-KocQzkp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/Project.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/4sePxz6ELUi-03QmDciEwK4ifPgd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/4sePxz6ELUi-03QmDciEwK4ifPgp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/NqxiTjXvd6VQwxY7Gl2CFF9iHQwd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/NqxiTjXvd6VQwxY7Gl2CFF9iHQwp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/SAzybIkWdE8NQlPWYUuqaoUZK_kd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/SAzybIkWdE8NQlPWYUuqaoUZK_kp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/U4meASRt5gyiiJy_H0eJw44q6UQd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/U4meASRt5gyiiJy_H0eJw44q6UQp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/VSOL3lDOyEo2E2lJiqiC8h8oEiMd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/VSOL3lDOyEo2E2lJiqiC8h8oEiMp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/dNKjTsqJzfNyyeVk-qkB0eyzqlgd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/dNKjTsqJzfNyyeVk-qkB0eyzqlgp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/mEsVC4fui6TQjWjYQZJFiLwCnX8d.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/mEsVC4fui6TQjWjYQZJFiLwCnX8p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/pc_DyjInGEprrJipdBxXAxISXRwd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/pc_DyjInGEprrJipdBxXAxISXRwp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/wHRGWZgsLaouoY52BCmprgyQbaUd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/wHRGWZgsLaouoY52BCmprgyQbaUp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/zmQpL1SK_c5N3yFRURp1mJhssVkd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/zmQpL1SK_c5N3yFRURp1mJhssVkp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/zt-b0ENAM8EVFMB-e6CUEcDq6Ogd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/S82aYhekdLB-g7IxuQ2F4iZZzr4/zt-b0ENAM8EVFMB-e6CUEcDq6Ogp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/VFIGuyZScAig4eq5dx7XRG6ZPxM/P8CmMJHg3F1O1URMkP1nO9Sg_wcd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/VFIGuyZScAig4eq5dx7XRG6ZPxM/P8CmMJHg3F1O1URMkP1nO9Sg_wcp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/VFIGuyZScAig4eq5dx7XRG6ZPxM/RzMX4cA_tUUYAmOa63mSGHetMQEd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/VFIGuyZScAig4eq5dx7XRG6ZPxM/RzMX4cA_tUUYAmOa63mSGHetMQEp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/VFIGuyZScAig4eq5dx7XRG6ZPxM/Th31xzCehQfx2ZNIL2aG6F9qEfkd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/VFIGuyZScAig4eq5dx7XRG6ZPxM/Th31xzCehQfx2ZNIL2aG6F9qEfkp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/VFIGuyZScAig4eq5dx7XRG6ZPxM/WGfw9M7uJaKFhPyon02bDHMgrDsd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/VFIGuyZScAig4eq5dx7XRG6ZPxM/WGfw9M7uJaKFhPyon02bDHMgrDsp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/VFIGuyZScAig4eq5dx7XRG6ZPxM/eFMemad1y7EOGGujCtrESH4PrYUd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/VFIGuyZScAig4eq5dx7XRG6ZPxM/eFMemad1y7EOGGujCtrESH4PrYUp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/VFIGuyZScAig4eq5dx7XRG6ZPxM/jW3HIqXTRXSRyVrKwXHzQJwJ_d0d.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/VFIGuyZScAig4eq5dx7XRG6ZPxM/jW3HIqXTRXSRyVrKwXHzQJwJ_d0p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/VFIGuyZScAig4eq5dx7XRG6ZPxM/jqABMBbC5NBvgEPEPdNS5CpBePAd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/VFIGuyZScAig4eq5dx7XRG6ZPxM/jqABMBbC5NBvgEPEPdNS5CpBePAp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/W1eD2F85jUZK1DJhjzKdaV-n984/lgxhYb0uuzQtts8qssYzLgNGqscd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/W1eD2F85jUZK1DJhjzKdaV-n984/lgxhYb0uuzQtts8qssYzLgNGqscp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/-mYgBjhDh4ajXutp2k-akmU-P0Ud.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/-mYgBjhDh4ajXutp2k-akmU-P0Up.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/07vKAM8Aeqk6zveQ7ceC4dZn1lgd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/07vKAM8Aeqk6zveQ7ceC4dZn1lgp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/0oyZ1eI9GaAf-QRerrDObAaHdUcd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/0oyZ1eI9GaAf-QRerrDObAaHdUcp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/17LZUFGRsVvb4pAfFVCus3ysbbMd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/17LZUFGRsVvb4pAfFVCus3ysbbMp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/2HH4kdpVS76QesHs4A9otLFBUPod.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/2HH4kdpVS76QesHs4A9otLFBUPop.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/2WKglMMgsHIVjW2ZiXrJoMogguQd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/2WKglMMgsHIVjW2ZiXrJoMogguQp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/3WtokzSoEoyEv36XAiI7RmftEv8d.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/3WtokzSoEoyEv36XAiI7RmftEv8p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/3mVOXnxRg42fOLtCSfQICqXoXScd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/3mVOXnxRg42fOLtCSfQICqXoXScp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/4bjJamYr5XwUjkkIjJo-YEhgMKod.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/4bjJamYr5XwUjkkIjJo-YEhgMKop.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/58csA2IHrumNQWliHp7SO-oREw4d.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/58csA2IHrumNQWliHp7SO-oREw4p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/5AMFWkRRx9jWHMYSEP2656oixZId.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/5AMFWkRRx9jWHMYSEP2656oixZIp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/5_9yVTu0LAYJOUpxtQYl3xNWk2kd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/5_9yVTu0LAYJOUpxtQYl3xNWk2kp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/67id2nIyXTVXDgpO5Ai9JbPIKsAd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/67id2nIyXTVXDgpO5Ai9JbPIKsAp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/6EI_wh_ZFpSGOqnWbEHkoltrV7od.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/6EI_wh_ZFpSGOqnWbEHkoltrV7op.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/6YAXRI4z3TAXlKI6eeiKF7YO2sEd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/6YAXRI4z3TAXlKI6eeiKF7YO2sEp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/75R_E1vNGlDHQ2CT7_5yJMfxT9wd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/75R_E1vNGlDHQ2CT7_5yJMfxT9wp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/7fp7DXfzVkXyKsGzTgL1oHOIYg8d.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/7fp7DXfzVkXyKsGzTgL1oHOIYg8p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/7kVQa0X1FjZcE_NvmTUABNBymOcd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/7kVQa0X1FjZcE_NvmTUABNBymOcp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/7ya_YW4DMtqis5O2UcNplQcWvaMd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/7ya_YW4DMtqis5O2UcNplQcWvaMp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/9wVG98mEWAa6139E95myAgJHrfod.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/9wVG98mEWAa6139E95myAgJHrfop.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/AJXKboYUVCODpdAq29GtAmezVCsd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/AJXKboYUVCODpdAq29GtAmezVCsp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/ARP-bRgQq-xFlHYJTI18HQ2wHdAd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/ARP-bRgQq-xFlHYJTI18HQ2wHdAp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/B0ncBN7o8IEgcmxHIXhYFTyYXEkd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/B0ncBN7o8IEgcmxHIXhYFTyYXEkp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/B6gjTo0sLeOWBLYLJp2wZ2mY9ikd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/B6gjTo0sLeOWBLYLJp2wZ2mY9ikp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/BE6dWXBqF7q4xNIyesPm1zB_CU4d.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/BE6dWXBqF7q4xNIyesPm1zB_CU4p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/BORHeKNDYjD-jFyStXwnQMNABvMd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/BORHeKNDYjD-jFyStXwnQMNABvMp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/ByFmLxsYKAEEOGa3gTljHv8XEakd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/ByFmLxsYKAEEOGa3gTljHv8XEakp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/C9qUISn-f3JVvBqcAV52NDXG2uAd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/C9qUISn-f3JVvBqcAV52NDXG2uAp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/E4R4mg7P42RhDEoWteRosZJfgxcd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/E4R4mg7P42RhDEoWteRosZJfgxcp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/FFerR_AdL1TkqQ1ZPBkjHm-fFlUd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/FFerR_AdL1TkqQ1ZPBkjHm-fFlUp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/G9ORKQlwtFx1_25VTlBhudOBGBUd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/G9ORKQlwtFx1_25VTlBhudOBGBUp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/GU8hdze6_9ti-rgeNz4x543GBxUd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/GU8hdze6_9ti-rgeNz4x543GBxUp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/Ggf1EEPqsJzbXyd7azdEn49I6kUd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/Ggf1EEPqsJzbXyd7azdEn49I6kUp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/GuzRB4F4EPNlPrYoXwJwxfonzZYd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/GuzRB4F4EPNlPrYoXwJwxfonzZYp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/HlkS4lhVJJdzT5-VgikUnM9VGEsd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/HlkS4lhVJJdzT5-VgikUnM9VGEsp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/ITQvXP1dhJXhIxrj3xeF0BOW4d0d.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/ITQvXP1dhJXhIxrj3xeF0BOW4d0p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/Ir9I93etDNQmRezjQAUTw6ZsBb0d.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/Ir9I93etDNQmRezjQAUTw6ZsBb0p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/K69APEKN2-nikwLszaVsZ15OW0Id.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/K69APEKN2-nikwLszaVsZ15OW0Ip.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/KDIKvqxTYexgGE0WIuNxcrsQF1Yd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/KDIKvqxTYexgGE0WIuNxcrsQF1Yp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/Knz2NcBVNwza6oEIjbvodP1I3jgd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/Knz2NcBVNwza6oEIjbvodP1I3jgp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/Nr8fjyjJSzIK_1vrIY8kpzmp0fkd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/Nr8fjyjJSzIK_1vrIY8kpzmp0fkp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/OkRVctHzeOUFWfbDOEWWqabca0cd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/OkRVctHzeOUFWfbDOEWWqabca0cp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/PnFOaAZ-JJQTXFWiubMHhyD66C8d.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/PnFOaAZ-JJQTXFWiubMHhyD66C8p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/QNrkdi1hM6p2z_dxRWaOYiyQXHgd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/QNrkdi1hM6p2z_dxRWaOYiyQXHgp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/QnTvRLRW5ZsJVB-yCJCbl9qqKDId.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/QnTvRLRW5ZsJVB-yCJCbl9qqKDIp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/SDyO3aIFwEjocYQdCbWG8mj7PSEd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/SDyO3aIFwEjocYQdCbWG8mj7PSEp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/TzlSyjcnuUO7IEbHMFJUBTZESpUd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/TzlSyjcnuUO7IEbHMFJUBTZESpUp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/UzCk5mvRBrwwTKTngEZSDawms9Md.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/UzCk5mvRBrwwTKTngEZSDawms9Mp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/VFIGuyZScAig4eq5dx7XRG6ZPxMd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/VFIGuyZScAig4eq5dx7XRG6ZPxMp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/VQXrQRK_S2Nycxof0ZkYaeUxT_od.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/VQXrQRK_S2Nycxof0ZkYaeUxT_op.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/VRTbnfWdJ8tGKsNxQdGixsuddUUd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/VRTbnfWdJ8tGKsNxQdGixsuddUUp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/Vd4Lq4vGMkIC7qncd_UyxbvIBhId.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/Vd4Lq4vGMkIC7qncd_UyxbvIBhIp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/Vv0elmMl1xCkIHV6CLxyyrHsQQId.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/Vv0elmMl1xCkIHV6CLxyyrHsQQIp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/WGn7Cezqj90MsMCl3gzQNJfgFA4d.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/WGn7Cezqj90MsMCl3gzQNJfgFA4p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/XN7Y155ybtAWFKfmwR3PiMDpUowd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/XN7Y155ybtAWFKfmwR3PiMDpUowp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/XtfDB9GEXtlj-L0eu1IzAKPzNc4d.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/XtfDB9GEXtlj-L0eu1IzAKPzNc4p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/YJkiEG7CByO4-rotZPjiB0R6apQd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/YJkiEG7CByO4-rotZPjiB0R6apQp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/Zd-mwUNXNC9mFKPgY4KZLnD5qDQd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/Zd-mwUNXNC9mFKPgY4KZLnD5qDQp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/_2322m8Ou8rJg7GaLc6cdMTwuHod.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/_2322m8Ou8rJg7GaLc6cdMTwuHop.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/_69ZWxnhkAbFftwai8fA1ABk8mgd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/_69ZWxnhkAbFftwai8fA1ABk8mgp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/_DNftmraXNK02kkeWbDP77jj4bwd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/_DNftmraXNK02kkeWbDP77jj4bwp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/_EmYCj2h-iZ3OOjg3HUK2v-0lxEd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/_EmYCj2h-iZ3OOjg3HUK2v-0lxEp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/_YZbTU9hDX-Cy-KHoWrKa6n-dkod.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/_YZbTU9hDX-Cy-KHoWrKa6n-dkop.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/a7gm8yMCxu4G4GFslkiw3qoLFUYd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/a7gm8yMCxu4G4GFslkiw3qoLFUYp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/aQlnecyUT1KLONl6R5J8895XX1Ud.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/aQlnecyUT1KLONl6R5J8895XX1Up.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/bXODY4F7c_A2mMQ41F1hiF_Bwrcd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/bXODY4F7c_A2mMQ41F1hiF_Bwrcp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/c-jrk1-fYRVzZI9KimLcknot-bQd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/c-jrk1-fYRVzZI9KimLcknot-bQp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/cuI-sIpUyg3xggPoVNnUADXBfp4d.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/cuI-sIpUyg3xggPoVNnUADXBfp4p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/f-Jvs_bV5bvogQJyutLPL5ygexQd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/f-Jvs_bV5bvogQJyutLPL5ygexQp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/fF6CCHmCkZLBWurMahSSZNcmuyod.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/fF6CCHmCkZLBWurMahSSZNcmuyop.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/fnbA8rjrRE-kZV-d9N5v40N-wDQd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/fnbA8rjrRE-kZV-d9N5v40N-wDQp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/goyWkEXl-v9ACnI5JVFro9lBP98d.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/goyWkEXl-v9ACnI5JVFro9lBP98p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/htH7P5d_IiVAawJ-kf2S1wIxmqwd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/htH7P5d_IiVAawJ-kf2S1wIxmqwp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/iRfSHOIW4ecVdSGZmsockln9RPQd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/iRfSHOIW4ecVdSGZmsockln9RPQp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/iXTIPufGzrWjvoVibcnVpq44rnYd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/iXTIPufGzrWjvoVibcnVpq44rnYp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/ikns8mCW5F5Lv5QCrHaW7mMEOeEd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/ikns8mCW5F5Lv5QCrHaW7mMEOeEp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/ipkWc3t1RKCZ5kBGo1cguuiWn84d.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/ipkWc3t1RKCZ5kBGo1cguuiWn84p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/jAz8aMkDoUjE-Lh2PSPqCN72jq8d.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/jAz8aMkDoUjE-Lh2PSPqCN72jq8p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/k_x81olL4QmYnH-i_3IGzfvUQicd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/k_x81olL4QmYnH-i_3IGzfvUQicp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/kbtrAXpO3KmpgelqX7YUD58keXId.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/kbtrAXpO3KmpgelqX7YUD58keXIp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/lbXOcn-F4H_UpuZMQZ1JfxlLoaUd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/lbXOcn-F4H_UpuZMQZ1JfxlLoaUp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/mV4twaRzXWzhUgsiIpjqEC7-B9Id.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/mV4twaRzXWzhUgsiIpjqEC7-B9Ip.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/mdfyEoihkfJywmWcuRHmZEmf74wd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/mdfyEoihkfJywmWcuRHmZEmf74wp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/mdwjJe3x6tRm7NWgf2lI8H9GLGId.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/mdwjJe3x6tRm7NWgf2lI8H9GLGIp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/me3YU_yoc73uNaljJP4DTlAXV_Qd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/me3YU_yoc73uNaljJP4DTlAXV_Qp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/mm3XxlgA-nIuIAezDkmqmqJtpF8d.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/mm3XxlgA-nIuIAezDkmqmqJtpF8p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/n0bXgloVQJhtn8Fgtsmftr8K1wUd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/n0bXgloVQJhtn8Fgtsmftr8K1wUp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/nrBBp7OiZDGCVy8cuvG8O7q76iEd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/nrBBp7OiZDGCVy8cuvG8O7q76iEp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/ohLaxWNluvL2ulTQEj_4ll3iEsQd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/ohLaxWNluvL2ulTQEj_4ll3iEsQp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/pg-a7_akHmXzQUtIkMfNfRJGmgQd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/pg-a7_akHmXzQUtIkMfNfRJGmgQp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/qY3RkgNdvuoih7a3Zlq-InLstqUd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/qY3RkgNdvuoih7a3Zlq-InLstqUp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/rK5ob_2D70JWUKybl7C2WrwvYxgd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/rK5ob_2D70JWUKybl7C2WrwvYxgp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/ruVOtcxielsYWSp4-N541MFW8E0d.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/ruVOtcxielsYWSp4-N541MFW8E0p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/s_zMABkd0GUNBNBh731m5ACADs0d.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/s_zMABkd0GUNBNBh731m5ACADs0p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/shmn2BXMGqy9Jdq1keIzImGcC5Md.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/shmn2BXMGqy9Jdq1keIzImGcC5Mp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/tVX7_KXVXprUtvCLR3hYYsD0DdYd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/tVX7_KXVXprUtvCLR3hYYsD0DdYp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/wCgbRCyGezXYA0tReUpuWPEAzLId.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/wCgbRCyGezXYA0tReUpuWPEAzLIp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/wvKX1WjHd-ENOqON4ZzPKEUersQd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/wvKX1WjHd-ENOqON4ZzPKEUersQp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/yLVRuxYJ-nnHDrtXNh1ZqEcGaXcd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/yLVRuxYJ-nnHDrtXNh1ZqEcGaXcp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/yUUrJ160RRQB4xp5kn8L-N6FdsId.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/yUUrJ160RRQB4xp5kn8L-N6FdsIp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/zsPYMyURGgdYrupa1KwT9H6C_TYd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/XDtian5PyaOKjwBGHx0WPBNiUDU/zsPYMyURGgdYrupa1KwT9H6C_TYp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/Zd-mwUNXNC9mFKPgY4KZLnD5qDQ/iaKQxw64J9OdIoeYWV1C42astiMd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/Zd-mwUNXNC9mFKPgY4KZLnD5qDQ/iaKQxw64J9OdIoeYWV1C42astiMp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/Zd-mwUNXNC9mFKPgY4KZLnD5qDQ/kjoCVos0k-0q6OphDV8Ix3F3Dsgd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/Zd-mwUNXNC9mFKPgY4KZLnD5qDQ/kjoCVos0k-0q6OphDV8Ix3F3Dsgp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/Zd-mwUNXNC9mFKPgY4KZLnD5qDQ/wCX7vYsjd3Y7xQvDW_d7nJQ9pIwd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/Zd-mwUNXNC9mFKPgY4KZLnD5qDQ/wCX7vYsjd3Y7xQvDW_d7nJQ9pIwp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/_69ZWxnhkAbFftwai8fA1ABk8mg/YUWT5ZuDI1UaxDdAfpDG1wvZBtUd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/_69ZWxnhkAbFftwai8fA1ABk8mg/YUWT5ZuDI1UaxDdAfpDG1wvZBtUp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/_69ZWxnhkAbFftwai8fA1ABk8mg/fC3ksxeV0IcDaBsZZM7-S5rg07Ed.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/_69ZWxnhkAbFftwai8fA1ABk8mg/fC3ksxeV0IcDaBsZZM7-S5rg07Ep.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/fjRQtWiSIy7hIlj-Kmk87M7s21k/NjSPEMsIuLUyIpr2u1Js5bVPsOsd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/fjRQtWiSIy7hIlj-Kmk87M7s21k/NjSPEMsIuLUyIpr2u1Js5bVPsOsp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/l-puU0yAZscMqVEpKH6b0Twiu_s/pMZg5Ioo5VUZrjfbud865u1El8Id.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/l-puU0yAZscMqVEpKH6b0Twiu_s/pMZg5Ioo5VUZrjfbud865u1El8Ip.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/l-puU0yAZscMqVEpKH6b0Twiu_s/zp5uqcKqc_MkWNjUcg06AArU6PUd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/l-puU0yAZscMqVEpKH6b0Twiu_s/zp5uqcKqc_MkWNjUcg06AArU6PUp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/1E-juF5LqehEtfn-hHKKys3-P5Id.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/1E-juF5LqehEtfn-hHKKys3-P5Ip.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/6JSVCuQk5epMS7cMxfi86RVx-nsd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/6JSVCuQk5epMS7cMxfi86RVx-nsp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/FxOZ4NmcFNKhnXbIsy82e4h_sCwd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/FxOZ4NmcFNKhnXbIsy82e4h_sCwp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/K7tnbULIzXLRlXeSpjeaU1Xlr1od.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/K7tnbULIzXLRlXeSpjeaU1Xlr1op.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/QMJD9OLFzxcTTbPOoh-ahQ4zTRUd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/QMJD9OLFzxcTTbPOoh-ahQ4zTRUp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/S82aYhekdLB-g7IxuQ2F4iZZzr4d.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/S82aYhekdLB-g7IxuQ2F4iZZzr4p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/TMK4UzWHdRLhy_w-CHt9y11Q8XAd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/TMK4UzWHdRLhy_w-CHt9y11Q8XAp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/XDtian5PyaOKjwBGHx0WPBNiUDUd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/XDtian5PyaOKjwBGHx0WPBNiUDUp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/bTEJeU_8R4R4qC77t7aJSjzV1F0d.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/bTEJeU_8R4R4qC77t7aJSjzV1F0p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/l-puU0yAZscMqVEpKH6b0Twiu_sd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/l-puU0yAZscMqVEpKH6b0Twiu_sp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/lKQG3fVl898GygtDynhOHAKyGrId.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /resources/project/qaw0eS1zuuY1ar9TdPn1GMfrjbQ/lKQG3fVl898GygtDynhOHAKyGrIp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/root/EEtUlUb-dLAdf0KpMVivaUlztwAp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/root/GiiBklLgTxteCEmomM8RCvWT0nQd.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/root/GiiBklLgTxteCEmomM8RCvWT0nQp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/root/KAXfQgCar2Yb8zOxgvf9hdmLP1Ep.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/root/W1eD2F85jUZK1DJhjzKdaV-n984p.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/root/fjRQtWiSIy7hIlj-Kmk87M7s21kp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/root/qaw0eS1zuuY1ar9TdPn1GMfrjbQp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/rootp.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/uuid-07931e29-9822-4bab-b4bc-e48148a08cc1.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /resources/project/uuid-7b2fdf73-1d9a-4c16-9b2c-327b642a5790.xml: -------------------------------------------------------------------------------- 1 | 2 | --------------------------------------------------------------------------------