/test/xts/hats/ai/nnrt/hdi/v1_0/nnrtFunctionTest/src/ |
D | hdi_model_prepare_test.cpp | 57 V1_0::Model *iModel = nullptr; 58 V1_0::SharedBuffer tensorBuffer{NNRT_INVALID_FD, 0, 0, 0}; 61 V1_0::ModelConfig config; 63 config.mode = V1_0::PERFORMANCE_NONE; 64 config.priority = V1_0::PRIORITY_NONE; 66 OHOS::sptr<V1_0::IPreparedModel> iPreparedModel; 69 std::vector<V1_0::SharedBuffer> modelCache; 91 V1_0::ModelConfig config; 93 config.mode = V1_0::PERFORMANCE_NONE; 94 config.priority = V1_0::PRIORITY_NONE; [all …]
|
D | hdi_model_run_test.cpp | 39 void AddModelTest(OHOS::sptr<V1_0::INnrtDevice> &device_, V1_0::ModelConfig &modelConfig, bool isDy… in AddModelTest() 49 V1_0::Model *iModel = nullptr; in AddModelTest() 50 V1_0::SharedBuffer tensorBuffer{NNRT_INVALID_FD, 0, 0, 0}; in AddModelTest() 53 OHOS::sptr<V1_0::IPreparedModel> iPreparedModel; in AddModelTest() 56 std::vector<V1_0::IOTensor> inputs; in AddModelTest() 57 std::vector<V1_0::IOTensor> outputs; in AddModelTest() 109 V1_0::ModelConfig modelConfig = { 110 .enableFloat16 = false, .mode = V1_0::PERFORMANCE_EXTREME, .priority = V1_0::PRIORITY_HIGH}; 127 V1_0::ModelConfig modelConfig = { 128 .enableFloat16 = true, .mode = V1_0::PERFORMANCE_EXTREME, .priority = V1_0::PRIORITY_HIGH}; [all …]
|
D | hdi_device_test.cpp | 75 V1_0::DeviceType deviceType; 79 ASSERT_TRUE(deviceType == V1_0::DeviceType::OTHER || deviceType == V1_0::DeviceType::GPU || 80 deviceType == V1_0::DeviceType::CPU || deviceType == V1_0::DeviceType::ACCELERATOR) 91 V1_0::DeviceStatus deviceStatus; 94 …ASSERT_TRUE(deviceStatus == V1_0::DeviceStatus::AVAILABLE || deviceStatus == V1_0::DeviceStatus::B… 95 … deviceStatus == V1_0::DeviceStatus::OFFLINE || deviceStatus == V1_0::DeviceStatus::UNKNOWN) 170 V1_0::Model *iModel = nullptr; 171 V1_0::SharedBuffer tensorBuffer{NNRT_INVALID_FD, 0, 0, 0}; 197 V1_0::Model *iModel = nullptr; 198 V1_0::SharedBuffer tensorBuffer{NNRT_INVALID_FD, 0, 0, 0}; [all …]
|
/test/xts/hats/hdf/display/buffer/moduletest_additional/ |
D | display_buffer_mt.cpp | 32 using namespace OHOS::HDI::Display::Composer::V1_0; 33 using namespace OHOS::HDI::Display::Buffer::V1_0; 163 info.usage = OHOS::HDI::Display::Composer::V1_0::HBM_USE_CPU_READ; 183 info.usage = OHOS::HDI::Display::Composer::V1_0::HBM_USE_CPU_WRITE; 203 info.usage = OHOS::HDI::Display::Composer::V1_0::HBM_USE_MEM_MMZ; 225 info.usage = OHOS::HDI::Display::Composer::V1_0::HBM_USE_MEM_DMA; 247 info.usage = OHOS::HDI::Display::Composer::V1_0::HBM_USE_MEM_SHARE; 269 info.usage = OHOS::HDI::Display::Composer::V1_0::HBM_USE_MEM_MMZ_CACHE; 291 info.usage = OHOS::HDI::Display::Composer::V1_0::HBM_USE_MEM_FB; 313 info.usage = OHOS::HDI::Display::Composer::V1_0::HBM_USE_ASSIGN_SIZE; [all …]
|
/test/xts/hats/hdf/codec/hdi_image/ |
D | codec_hdi_jpeg_test.cpp | 29 using namespace OHOS::HDI::Display::Buffer::V1_0; 30 using namespace OHOS::HDI::Display::Composer::V1_0; 31 using namespace OHOS::HDI::Codec::V1_0; 32 using namespace OHOS::HDI::Codec::Image::V1_0; 177 EXPECT_TRUE(OHOS::HDI::Codec::V1_0::VIDEO_DECODER == 0); 184 EXPECT_TRUE(OHOS::HDI::Codec::V1_0::VIDEO_ENCODER == 1); 191 EXPECT_TRUE(OHOS::HDI::Codec::V1_0::AUDIO_DECODER == 2); 198 EXPECT_TRUE(OHOS::HDI::Codec::V1_0::AUDIO_ENCODER == 3); 205 EXPECT_TRUE(OHOS::HDI::Codec::V1_0::INVALID_TYPE == 4); 212 EXPECT_TRUE(OHOS::HDI::Codec::V1_0::MEDIA_ROLETYPE_IMAGE_JPEG == 0); [all …]
|
/test/xts/hats/hdf/display/buffer/moduletest/ |
D | display_test.cpp | 34 using namespace OHOS::HDI::Display::Composer::V1_0; 35 using namespace OHOS::HDI::Display::Buffer::V1_0; 47 ret = OHOS::HDI::Display::Composer::V1_0::DispErrCode::DISPLAY_FD_ERR; 54 ret = OHOS::HDI::Display::Composer::V1_0::DispErrCode::DISPLAY_PARAM_ERR; 61 ret = OHOS::HDI::Display::Composer::V1_0::DispErrCode::DISPLAY_NOT_SUPPORT; 68 ret = OHOS::HDI::Display::Composer::V1_0::DispErrCode::DISPLAY_SYS_BUSY; 75 ret = OHOS::HDI::Display::Composer::V1_0::DispErrCode::DISPLAY_NOT_PERM; 82 ret = OHOS::HDI::Display::Composer::V1_0::LayerType::LAYER_TYPE_GRAPHIC; 89 ret = OHOS::HDI::Display::Composer::V1_0::LayerType::LAYER_TYPE_OVERLAY; 96 ret = OHOS::HDI::Display::Composer::V1_0::LayerType::LAYER_TYPE_SDIEBAND; [all …]
|
D | display_buffer_mt.cpp | 34 using namespace OHOS::HDI::Display::Composer::V1_0; 35 using namespace OHOS::HDI::Display::Buffer::V1_0; 164 info.usage = OHOS::HDI::Display::Composer::V1_0::HBM_USE_MEM_DMA | 165 OHOS::HDI::Display::Composer::V1_0::HBM_USE_CPU_READ | 166 OHOS::HDI::Display::Composer::V1_0::HBM_USE_CPU_WRITE; 181 info.usage = OHOS::HDI::Display::Composer::V1_0::HBM_USE_MEM_DMA | 182 OHOS::HDI::Display::Composer::V1_0::HBM_USE_CPU_READ | 183 OHOS::HDI::Display::Composer::V1_0::HBM_USE_CPU_WRITE; 197 info.usage = OHOS::HDI::Display::Composer::V1_0::HBM_USE_MEM_DMA | 198 OHOS::HDI::Display::Composer::V1_0::HBM_USE_CPU_READ | [all …]
|
/test/xts/hats/ai/nnrt/hdi/v1_0/common/ |
D | hdi_nnrt_test_utils.h | 29 namespace V1_0 = OHOS::HDI::Nnrt::V1_0; variable 46 static OH_NN_ReturnCode ConvertModel(OHOS::sptr<V1_0::INnrtDevice> device_, OH_NNModel *model, 47 V1_0::SharedBuffer &tensorBuffer, V1_0::Model **iModel); 48 static V1_0::IOTensor CreateIOTensor(OHOS::sptr<V1_0::INnrtDevice> &device); 49 …static V1_0::IOTensor CreateInputIOTensor(OHOS::sptr<V1_0::INnrtDevice> &device, size_t length, fl… 50 … static V1_0::IOTensor CreateOutputIOTensor(OHOS::sptr<V1_0::INnrtDevice> &device, size_t length); 55 …static void ReleaseBufferOfTensors(OHOS::sptr<V1_0::INnrtDevice> &device, std::vector<V1_0::IOTens…
|
D | hdi_nnrt_test_utils.cpp | 106 OH_NN_ReturnCode HDICommon::ConvertModel(OHOS::sptr<V1_0::INnrtDevice> device_, OH_NNModel *model, in ConvertModel() 107 … OHOS::HDI::Nnrt::V1_0::SharedBuffer &tensorBuffer, V1_0::Model **iModel) in ConvertModel() 144 V1_0::IOTensor HDICommon::CreateIOTensor(OHOS::sptr<V1_0::INnrtDevice> &device) in CreateIOTensor() 146 OHOS::HDI::Nnrt::V1_0::SharedBuffer buffer{NNRT_INVALID_FD, 0, 0, 0}; in CreateIOTensor() 151 V1_0::IOTensor tensor{.name = "tensor", in CreateIOTensor() 152 .dataType = V1_0::DATA_TYPE_FLOAT32, in CreateIOTensor() 154 .format = V1_0::FORMAT_NHWC, in CreateIOTensor() 159 V1_0::IOTensor HDICommon::CreateInputIOTensor(OHOS::sptr<V1_0::INnrtDevice> &device, size_t length,… in CreateInputIOTensor() 165 OHOS::HDI::Nnrt::V1_0::SharedBuffer buffer{NNRT_INVALID_FD, 0, 0, 0}; in CreateInputIOTensor() 179 V1_0::IOTensor tensor{.name = "tensor", in CreateInputIOTensor() [all …]
|
D | hdi_nnrt_test.h | 28 namespace V1_0 = OHOS::HDI::Nnrt::V1_0; variable 35 OHOS::sptr<V1_0::INnrtDevice> device_; 40 device_ = V1_0::INnrtDevice::Get(); in SetUp()
|
/test/xts/hats/ai/nnrt/hdi/v1_0/nnrtStabilityTest/src/ |
D | hdi_stability_test.cpp | 50 void PrepareModelTest(OHOS::sptr<V1_0::INnrtDevice> device, V1_0::Model *iModel) in PrepareModelTest() 52 OHOS::sptr<V1_0::IPreparedModel> iPreparedModel; in PrepareModelTest() 53 V1_0::ModelConfig config; in PrepareModelTest() 57 void RunModelTest(OHOS::sptr<V1_0::INnrtDevice> device, OHOS::sptr<V1_0::IPreparedModel> iPreparedM… in RunModelTest() 59 std::vector<V1_0::IOTensor> inputs; in RunModelTest() 60 std::vector<V1_0::IOTensor> outputs; in RunModelTest() 112 OHOS::sptr<V1_0::INnrtDevice> device = V1_0::INnrtDevice::Get(); 113 std::vector<V1_0::Model *> iModels; 114 std::vector<V1_0::SharedBuffer> tensorBuffers; 120 V1_0::SharedBuffer tensorBuffer{NNRT_INVALID_FD, 0, 0, 0}; [all …]
|
/test/xts/hats/hdf/camera/cameraMg/v1_2/src/ |
D | camera_flashlight_test_v1_2.cpp | 69 EXPECT_EQ(ret, HDI::Camera::V1_0::NO_ERROR); 84 EXPECT_EQ(ret, HDI::Camera::V1_0::NO_ERROR); 87 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::INVALID_ARGUMENT); 102 EXPECT_EQ(ret, HDI::Camera::V1_0::NO_ERROR); 105 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::INVALID_ARGUMENT); 120 EXPECT_EQ(ret, HDI::Camera::V1_0::NO_ERROR); 121 EXPECT_EQ(OHOS::Camera::Test::statusCallback, HDI::Camera::V1_0::FLASHLIGHT_OFF); 124 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 125 EXPECT_EQ(OHOS::Camera::Test::statusCallback, HDI::Camera::V1_0::FLASHLIGHT_ON); 140 EXPECT_EQ(ret, HDI::Camera::V1_0::NO_ERROR); [all …]
|
D | camera_prelaunch_test_v1_2.cpp | 45 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 58 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 71 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::INVALID_ARGUMENT); 84 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::INVALID_ARGUMENT); 97 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::INVALID_ARGUMENT); 114 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 132 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 150 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 168 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 186 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); [all …]
|
D | hdi_common_v1_2.cpp | 22 OHOS::HDI::Camera::V1_0::FlashlightStatus Test::statusCallback = 23 static_cast<OHOS::HDI::Camera::V1_0::FlashlightStatus>(0); 83 service = static_cast<OHOS::HDI::Camera::V1_0::ICameraHost *>(serviceV1_2.GetRefPtr()); in Init() 131 EXPECT_EQ(rc, HDI::Camera::V1_0::NO_ERROR); in Open() 133 …cameraDevice = static_cast<OHOS::HDI::Camera::V1_0::ICameraDevice *>(cameraDeviceV1_1.GetRefPtr()); in Open() 153 EXPECT_EQ(rc, HDI::Camera::V1_0::NO_ERROR); in OpenCameraV1_2() 155 …cameraDevice = static_cast<OHOS::HDI::Camera::V1_0::ICameraDevice *>(cameraDeviceV1_2.GetRefPtr()); in OpenCameraV1_2() 167 if (rc != HDI::Camera::V1_0::NO_ERROR) { in GetCameraMetadata() 326 if (rc == HDI::Camera::V1_0::NO_ERROR) { in StartStream() 328 …streamOperator = static_cast<OHOS::HDI::Camera::V1_0::IStreamOperator *>(streamOperator_V1_1.GetRe… in StartStream() [all …]
|
/test/xts/hats/hdf/display/composer/common/ |
D | hdi_test_layer.h | 30 HdiGrallocBuffer(uint32_t seqNo, uint32_t w, uint32_t h, Composer::V1_0::PixelFormat fmt); 68 Composer::V1_0::CompositionType GetCompType() const in GetCompType() 83 void SetCompType(Composer::V1_0::CompositionType type); 99 Composer::V1_0::CompositionType compType_ = Composer::V1_0::CompositionType::COMPOSITION_CLIENT; 101 Composer::V1_0::CompositionType compType_ = Composer::V1_0::CompositionType::COMPOSITION_DEVICE;
|
/test/xts/hats/hdf/camera/cameraMg/v1_0/src/ |
D | hdi_stream_uttest.cpp | 48 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 79 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 80 EXPECT_EQ(true, pType ==HDI::Camera::V1_0::DYNAMIC_SUPPORTED); 95 …EXPECT_EQ(false, cameraTest->rc != HDI::Camera::V1_0::NO_ERROR || cameraTest->streamOperator == nu… 115 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 120 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 135 …EXPECT_EQ(false, cameraTest->rc != HDI::Camera::V1_0::NO_ERROR || cameraTest->streamOperator == nu… 170 …EXPECT_EQ(false, cameraTest->rc != HDI::Camera::V1_0::NO_ERROR || cameraTest->streamOperator == nu… 190 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 193 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); [all …]
|
D | hdi_device_uttest.cpp | 47 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 77 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 82 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 97 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 102 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 118 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 132 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR);
|
/test/xts/hats/hdf/camera/cameraMg_additional/v1_0/src/ |
D | hdi_stream_uttest.cpp | 44 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::INVALID_ARGUMENT); 62 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::INVALID_ARGUMENT); 80 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::INVALID_ARGUMENT); 99 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 115 …EXPECT_EQ(false, cameraTest->rc != HDI::Camera::V1_0::NO_ERROR || cameraTest->streamOperator == nu… 117 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 132 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 148 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 179 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::INVALID_ARGUMENT); 194 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); [all …]
|
D | hdi_device_uttest.cpp | 47 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 62 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 68 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 83 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 98 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 115 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR); 130 EXPECT_EQ(cameraTest->rc, HDI::Camera::V1_0::NO_ERROR);
|
/test/xts/hats/hdf/bluetooth/hdiService/ |
D | bluetooth_hci_callback_impl.h | 22 using OHOS::HDI::Bluetooth::Hci::V1_0::IHciCallback; 23 using OHOS::HDI::Bluetooth::Hci::V1_0::BtStatus; 24 using OHOS::HDI::Bluetooth::Hci::V1_0::BtType; 29 namespace V1_0 {
|
/test/xts/hats/hdf/display/buffer/death/ |
D | death_test.h | 28 using OHOS::HDI::Display::Buffer::V1_0::IAllocator; 29 using OHOS::HDI::Display::Buffer::V1_0::IMapper; 30 using OHOS::HDI::Display::Buffer::V1_0::AllocInfo; 31 using OHOS::HDI::Display::Buffer::V1_0::IDisplayBuffer;
|
/test/xts/hats/hdf/camera/cameraBenchmarkTest/v1_1/src/ |
D | benchmark_common.cpp | 90 service = static_cast<OHOS::HDI::Camera::V1_0::ICameraHost *>(serviceV1_1.GetRefPtr()); in Init() 99 if (rc != HDI::Camera::V1_0::NO_ERROR) { in GetCameraMetadata() 125 if (rc != HDI::Camera::V1_0::NO_ERROR || cameraDeviceV1_1 == nullptr) { in Open() 130 …cameraDevice = static_cast<OHOS::HDI::Camera::V1_0::ICameraDevice *>(cameraDeviceV1_1.GetRefPtr()); in Open() 149 if (rc == HDI::Camera::V1_0::NO_ERROR) { in StartStream() 151 …streamOperator = static_cast<OHOS::HDI::Camera::V1_0::IStreamOperator *>(streamOperator_V1_1.GetRe… in StartStream() 152 if (rc != HDI::Camera::V1_0::NO_ERROR) { in StartStream() 252 EXPECT_EQ(false, rc != HDI::Camera::V1_0::NO_ERROR); in StartStream() 254 EXPECT_EQ(false, rc != HDI::Camera::V1_0::NO_ERROR); in StartStream() 270 EXPECT_EQ(true, rc == HDI::Camera::V1_0::NO_ERROR); in StartCapture() [all …]
|
/test/xts/hats/hdf/camera/cameraHdi/v4l2/src/ |
D | camera_capture_test.cpp | 124 if (display_->rc == HDI::Camera::V1_0::NO_ERROR) { 200 EXPECT_EQ(true, display_->rc == HDI::Camera::V1_0::NO_ERROR); 201 if (display_->rc == HDI::Camera::V1_0::NO_ERROR) { 208 EXPECT_EQ(true, display_->rc == HDI::Camera::V1_0::NO_ERROR); 209 if (display_->rc == HDI::Camera::V1_0::NO_ERROR) { 241 EXPECT_EQ(true, display_->rc == HDI::Camera::V1_0::NO_ERROR); 242 if (display_->rc == HDI::Camera::V1_0::NO_ERROR) { 248 EXPECT_EQ(true, display_->rc == HDI::Camera::V1_0::NO_ERROR); 249 if (display_->rc == HDI::Camera::V1_0::NO_ERROR) { 256 EXPECT_EQ(true, display_->rc == HDI::Camera::V1_0::NO_ERROR); [all …]
|
D | camera_preview_test.cpp | 96 EXPECT_EQ(true, display_->rc != HDI::Camera::V1_0::NO_ERROR); 97 if (display_->rc == HDI::Camera::V1_0::NO_ERROR) { 122 EXPECT_EQ(true, display_->rc == HDI::Camera::V1_0::NO_ERROR); 144 EXPECT_EQ(true, display_->rc == HDI::Camera::V1_0::NO_ERROR); 171 EXPECT_EQ(true, display_->rc == HDI::Camera::V1_0::NO_ERROR); 177 EXPECT_EQ(HDI::Camera::V1_0::NO_ERROR, display_->rc); 217 EXPECT_EQ(true, display_->rc == HDI::Camera::V1_0::NO_ERROR); 221 EXPECT_EQ(true, display_->rc == HDI::Camera::V1_0::NO_ERROR); 222 if (display_->rc == HDI::Camera::V1_0::NO_ERROR) { 270 EXPECT_EQ(false, display_->rc == HDI::Camera::V1_0::NO_ERROR); [all …]
|
/test/xts/hats/hdf/usb/transferTest_additional/common/ |
D | usbd_transfer_test_additional.cpp | 40 using namespace OHOS::HDI::Usb::V1_0; 147 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointId}; 166 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointId}; 185 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointId}; 204 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointId}; 231 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointId}; 258 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointId}; 285 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointId}; 304 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointId}; 323 OHOS::HDI::Usb::V1_0::UsbPipe pipe = {interfaceId, pointId}; [all …]
|