Home
last modified time | relevance | path

Searched refs:size_t (Results 1 – 25 of 531) sorted by relevance

12345678910>>...22

/hal_nxp-latest/mcux/mcux-sdk/drivers/caam/
Dfsl_caam.h527 size_t keySize);
560 size_t size,
562 size_t keySize);
582 size_t size,
584 size_t keySize);
603 size_t size,
606 size_t keySize);
625 size_t size,
628 size_t keySize);
657 size_t size,
[all …]
Dfsl_caam.c271 static void caam_memcpy(void *dst, const void *src, size_t size)
309 size_t inputRingSize, in caam_job_ring_set_base_address_and_size()
490 size_t inputKeySize, in hmac_prehash_key()
492 size_t *outputKeySize) in hmac_prehash_key()
719 size_t inputSize, in caam_aes_gcm_check_input_args()
720 size_t ivSize, in caam_aes_gcm_check_input_args()
721 size_t aadSize, in caam_aes_gcm_check_input_args()
722 size_t tagSize) in caam_aes_gcm_check_input_args()
752 if (!((ivSize >= 1u) && (sizeof(size_t) <= 4u))) in caam_aes_gcm_check_input_args()
804 size_t size,
[all …]
/hal_nxp-latest/mcux/mcux-sdk/drivers/cau3/
Dfsl_cau3.h244 size_t keySize,
323 status_t CAU3_AES_SetKey(CAU3_Type *base, cau3_handle_t *handle, const uint8_t *key, size_t keySize…
366 status_t CAU3_AES_Cmac(CAU3_Type *base, cau3_handle_t *handle, const uint8_t *message, size_t size,…
421 status_t CAU3_TDES_SetKey(CAU3_Type *base, cau3_handle_t *handle, const uint8_t *key, size_t keySiz…
496 status_t CAU3_HASH_Update(CAU3_Type *base, cau3_hash_ctx_t *ctx, const uint8_t *input, size_t input…
509 status_t CAU3_HASH_Finish(CAU3_Type *base, cau3_hash_ctx_t *ctx, uint8_t *output, size_t *outputSiz…
527 size_t inputSize,
529 size_t *outputSize);
555 …ACHA20_POLY1305_SetKey(CAU3_Type *base, cau3_handle_t *handle, const uint8_t *key, size_t keySize);
580 size_t size,
[all …]
Dfsl_cau3.c106 size_t blksz; /*!< number of valid bytes in memory buffer */
109size_t fullMessageSize; /*!< track message size during CAU3_HASH_Update(). The value is used…
792 static status_t cau3_initialize_inst_memory(CAU3_Type *base, const uint32_t *cau3ImemImage, size_t
796 size_t cau3ReadOnlyConstantsBytes,
803 … CAU3_Type *base, const uint8_t *key, size_t keySize, uint32_t keySlot, cau3_task_done_t taskDone);
884 static status_t cau3_initialize_inst_memory(CAU3_Type *base, const uint32_t *cau3ImemImage, size_t in cau3_initialize_inst_memory()
975 size_t cau3ReadOnlyConstantsBytes, in cau3_initialize_read_only_data_memory()
1074 … CAU3_Type *base, const uint8_t *key, size_t keySize, uint32_t keySlot, cau3_task_done_t taskDone) in cau3_load_key()
1367 status_t CAU3_LoadSpecialKeyContext(CAU3_Type *base, size_t keySize, cau3_key_slot_t keySlot, cau3_… in CAU3_LoadSpecialKeyContext()
1536 status_t CAU3_AES_SetKey(CAU3_Type *base, cau3_handle_t *handle, const uint8_t *key, size_t keySize) in CAU3_AES_SetKey()
[all …]
/hal_nxp-latest/mcux/middleware/mcux-secure-subsystem/inc/
Dfsl_sss_sscp.h107 size_t digestFullLen;
139 size_t signatureFullLen;
153 size_t bufferSize;
197 size_t ivLen,
200 size_t dataLen);
202 sss_status_t sss_sscp_cipher_init(sss_sscp_symmetric_t *context, uint8_t *iv, size_t ivLen);
205 …sss_sscp_symmetric_t *context, const uint8_t *srcData, size_t srcLen, uint8_t *destData, size_t *d…
208 …sss_sscp_symmetric_t *context, const uint8_t *srcData, size_t srcLen, uint8_t *destData, size_t *d…
213 size_t size,
216 size_t *szLeft);
[all …]
Dfsl_sss_api.h568 size_t digestFullLen;
777 …ession_prop_get_au8(sss_session_t *session, uint32_t property, uint8_t *pValue, size_t *pValueLen);
848 size_t dataLen,
849 size_t keyBitLen,
851 size_t optionsLen);
856 size_t keyBitLen,
861 …sss_key_store_t *keyStore, sss_object_t *keyObject, uint8_t *data, size_t *dataLen, size_t *pKeyBi…
869 size_t *dataLen,
870 size_t *pKeyBitLen);
931 size_t keyByteLenMax,
[all …]
Dfsl_sss_mgmt.h64 …ss_mgmt_get_property(sss_mgmt_t *context, uint32_t propertyId, uint8_t *destData, size_t *dataLen);
79 …gmt_set_property(sss_mgmt_t *context, uint32_t propertyId, const uint8_t *srcData, size_t dataLen);
113 size_t *destDataLen,
115 size_t *optionsLen);
133 …_mgmt_t *context, uint32_t fuseId, uint32_t *srcData, size_t *srcDataLen, uintptr_t options, size_…
160 size_t *optionsLen);
175 sss_status_t sss_mgmt_import_secret(sss_mgmt_t *context, const uint8_t *srcData, size_t dataLen);
190 sss_status_t sss_mgmt_export_secret(sss_mgmt_t *context, uint8_t *destData, size_t *dataLen);
206 sss_status_t sss_mgmt_attest(sss_mgmt_t *context, uint8_t *destData, size_t *dataLen);
222 sss_status_t sss_mgmt_blob_load_secret(sss_mgmt_t *context, const uint8_t *srcData, size_t dataLen);
[all …]
/hal_nxp-latest/mcux/middleware/mcux-secure-subsystem/port/kw45_k4w1/
Dsss_crypto.h139 status_t SSS_aes_cmac_starts(cmac_aes_context_t *ctx, const unsigned char *key, size_t key_bytelen);
143 status_t SSS_aes_cmac_update(cmac_aes_context_t *ctx, const unsigned char *input, size_t ilen);
151 size_t keylen,
153 size_t ilen,
158 size_t key_len,
160 size_t in_len,
163 status_t SSS_set_aes_key_cmac(cmac_aes_context_t *pCtx, const unsigned char *key, size_t key_bytele…
167 status_t SSS_set_aes_key(aes_context_t *ctx, const unsigned char *key, const size_t key_byte_len);
169 status_t SSS_aes_init(aes_context_t *ctx, const unsigned char *key, size_t keybits);
173 size_t inputLen,
[all …]
/hal_nxp-latest/mcux/mcux-sdk/drivers/aes/
Dfsl_aes.h69 status_t AES_SetKey(AES_Type *base, const uint8_t *key, size_t keySize);
82 status_t AES_EncryptEcb(AES_Type *base, const uint8_t *plaintext, uint8_t *ciphertext, size_t size);
95 status_t AES_DecryptEcb(AES_Type *base, const uint8_t *ciphertext, uint8_t *plaintext, size_t size);
108 …AES_Type *base, const uint8_t *plaintext, uint8_t *ciphertext, size_t size, const uint8_t iv[AES_I…
121 …AES_Type *base, const uint8_t *ciphertext, uint8_t *plaintext, size_t size, const uint8_t iv[AES_I…
134 …AES_Type *base, const uint8_t *plaintext, uint8_t *ciphertext, size_t size, const uint8_t iv[AES_I…
147 …AES_Type *base, const uint8_t *ciphertext, uint8_t *plaintext, size_t size, const uint8_t iv[AES_I…
160 …AES_Type *base, const uint8_t *plaintext, uint8_t *ciphertext, size_t size, const uint8_t iv[AES_I…
173 …AES_Type *base, const uint8_t *ciphertext, uint8_t *plaintext, size_t size, const uint8_t iv[AES_I…
198 size_t size,
[all …]
Dfsl_aes.c164 static status_t aes_load_key(AES_Type *base, const uint8_t *key, size_t keySize) in aes_load_key()
372 status_t AES_SetKey(AES_Type *base, const uint8_t *key, size_t keySize) in AES_SetKey()
388 status_t AES_EncryptEcb(AES_Type *base, const uint8_t *plaintext, uint8_t *ciphertext, size_t size) in AES_EncryptEcb()
433 status_t AES_DecryptEcb(AES_Type *base, const uint8_t *ciphertext, uint8_t *plaintext, size_t size) in AES_DecryptEcb()
480 size_t size, in aes_block_mode()
576 …AES_Type *base, const uint8_t *plaintext, uint8_t *ciphertext, size_t size, const uint8_t iv[AES_I… in AES_EncryptCbc()
592 …AES_Type *base, const uint8_t *ciphertext, uint8_t *plaintext, size_t size, const uint8_t iv[AES_I… in AES_DecryptCbc()
608 …AES_Type *base, const uint8_t *plaintext, uint8_t *ciphertext, size_t size, const uint8_t iv[AES_I… in AES_EncryptCfb()
624 …AES_Type *base, const uint8_t *ciphertext, uint8_t *plaintext, size_t size, const uint8_t iv[AES_I… in AES_DecryptCfb()
640 …AES_Type *base, const uint8_t *plaintext, uint8_t *ciphertext, size_t size, const uint8_t iv[AES_I… in AES_EncryptOfb()
[all …]
/hal_nxp-latest/mcux/middleware/wifi_nxp/incl/wmcrypto/
Dwmcrypto.h117 uint32_t nxp_sha1_vector(size_t nmsg, const uint8_t *msg[], const size_t msglen[], uint8_t *mac, si…
133 uint32_t nxp_sha256_vector(size_t nmsg, const uint8_t *msg[], const size_t msglen[], uint8_t *mac,
146 void nxp_sha256(size_t num_elem, const uint8_t *addr[], const size_t *len, uint8_t *mac);
280 size_t key_len,
283 size_t data_len,
285 size_t buf_len);
291 int hmac_sha1(const uint8_t *key, size_t key_len, const uint8_t *data, size_t data_len, uint8_t *ma…
294 size_t secret_len,
297 size_t seed_len,
299 size_t outlen);
[all …]
/hal_nxp-latest/mcux/mcux-sdk/drivers/hashcrypt/
Dfsl_hashcrypt.h253 …T_AES_SetKey(HASHCRYPT_Type *base, hashcrypt_handle_t *handle, const uint8_t *key, size_t keySize);
269 …ype *base, hashcrypt_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, size_t size);
285 …ype *base, hashcrypt_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, size_t size);
302 size_t size,
320 size_t size,
349 size_t size,
352 size_t *szLeft);
376 size_t size,
395 size_t size,
414 size_t size,
[all …]
Dfsl_hashcrypt.c48 size_t blksz; /*!< number of valid bytes in memory buffer */
51size_t fullMessageSize; /*!< track message size during SHA_Update(). The value is used …
182 static status_t hashcrypt_get_key_from_unaligned_src(uint8_t *dest, const uint8_t *src, size_t size) in hashcrypt_get_key_from_unaligned_src()
242 __STATIC_INLINE void hashcrypt_load_data(HASHCRYPT_Type *base, uint32_t *src, size_t size) in hashcrypt_load_data()
318 static status_t hashcrypt_get_data(HASHCRYPT_Type *base, uint8_t *output, size_t outputSize) in hashcrypt_get_data()
388 size_t keySize = 0; in hashcrypt_aes_load_userKey()
425 size_t size) in hashcrypt_aes_one_block_aligned()
470 size_t size) in hashcrypt_aes_one_block_unaligned()
482 size_t actSz = size >= 256u ? 256u : size; in hashcrypt_aes_one_block_unaligned()
483 size_t actSzOrig = actSz; in hashcrypt_aes_one_block_unaligned()
[all …]
/hal_nxp-latest/mcux/mcux-sdk/drivers/dcp/
Dfsl_dcp.h326 status_t DCP_AES_SetKey(DCP_Type *base, dcp_handle_t *handle, const uint8_t *key, size_t keySize);
342 … DCP_Type *base, dcp_handle_t *handle, const uint8_t *plaintext, uint8_t *ciphertext, size_t size);
358 … DCP_Type *base, dcp_handle_t *handle, const uint8_t *ciphertext, uint8_t *plaintext, size_t size);
378 size_t size,
399 size_t size,
429 size_t size);
450 size_t size);
472 size_t size,
495 size_t size,
538 status_t DCP_HASH_Update(DCP_Type *base, dcp_hash_ctx_t *ctx, const uint8_t *input, size_t inputSiz…
[all …]
/hal_nxp-latest/mcux/mcux-sdk/drivers/flexio/uart/
Dfsl_flexio_uart.h110 size_t dataSize; /*!< Transfer size*/
126 volatile size_t txDataSize; /*!< Size of the remaining data to send. */
128 volatile size_t rxDataSize; /*!< Size of the remaining data to receive. */
129 size_t txDataSizeAll; /*!< Total bytes to be sent. */
130 size_t rxDataSizeAll; /*!< Total bytes to be received. */
133 size_t rxRingBufferSize; /*!< Size of the ring buffer. */
387 status_t FLEXIO_UART_WriteBlocking(FLEXIO_UART_Type *base, const uint8_t *txData, size_t txSize);
400 status_t FLEXIO_UART_ReadBlocking(FLEXIO_UART_Type *base, uint8_t *rxData, size_t rxSize);
454 size_t ringBufferSize);
509 …XIO_UART_TransferGetSendCount(FLEXIO_UART_Type *base, flexio_uart_handle_t *handle, size_t *count);
[all …]
/hal_nxp-latest/mcux/mcux-sdk/drivers/puf_v3/
Dfsl_puf_v3.h90 #define PUF_ACTIVATION_CODE_SIZE (size_t)(FSL_FEATURE_PUF_ACTIVATION_CODE_SIZE)
159 status_t PUF_Enroll(PUF_Type *base, uint8_t *activationCode, size_t activationCodeSize, uint8_t *sc…
175 status_t PUF_Start(PUF_Type *base, const uint8_t *activationCode, size_t activationCodeSize, uint8_…
200 …etKey(PUF_Type *base, puf_key_ctx_t *keyCtx, puf_key_dest_t keyDest, uint8_t *key, size_t keySize);
215 PUF_Type *base, puf_key_ctx_t *keyCtx, size_t keySize, uint8_t *keyCode, size_t keyCodeSize);
231 …_Type *base, puf_key_ctx_t *keyCtx, uint8_t *userKey, size_t userKeySize, uint8_t *keyCode, size_t
247 …F_Type *base, puf_key_dest_t keyDest, uint8_t *keyCode, size_t keyCodeSize, uint8_t *key, size_t k…
259 status_t PUF_GenerateRandom(PUF_Type *base, uint8_t *data, size_t size);
/hal_nxp-latest/mcux/mcux-sdk/drivers/lpflexcomm/lpi2c/
Dfsl_lpi2c.h239size_t subaddressSize; /*!< Length of sub address to send in bytes. Maximum size is 4 bytes.…
241 size_t dataSize; /*!< Number of bytes to transfer. */
394 size_t dataSize; /*!< Transfer size */
397size_t transferredCount; /*!< Number of bytes actually transferred since start or last repeated …
712 static inline void LPI2C_MasterSetWatermarks(LPI2C_Type *base, size_t txWords, size_t rxWords) in LPI2C_MasterSetWatermarks()
726 static inline void LPI2C_MasterGetFifoCounts(LPI2C_Type *base, size_t *rxCount, size_t *txCount) in LPI2C_MasterGetFifoCounts()
828 status_t LPI2C_MasterSend(LPI2C_Type *base, void *txBuff, size_t txSize);
843 status_t LPI2C_MasterReceive(LPI2C_Type *base, void *rxBuff, size_t rxSize);
926 status_t LPI2C_MasterTransferGetCount(LPI2C_Type *base, lpi2c_master_handle_t *handle, size_t *coun…
1234 status_t LPI2C_SlaveSend(LPI2C_Type *base, void *txBuff, size_t txSize, size_t *actualTxSize);
[all …]
/hal_nxp-latest/mcux/mcux-sdk/drivers/lpi2c/
Dfsl_lpi2c.h242size_t subaddressSize; /*!< Length of sub address to send in bytes. Maximum size is 4 bytes.…
244 size_t dataSize; /*!< Number of bytes to transfer. */
396 size_t dataSize; /*!< Transfer size */
399size_t transferredCount; /*!< Number of bytes actually transferred since start or last repeated …
744 static inline void LPI2C_MasterSetWatermarks(LPI2C_Type *base, size_t txWords, size_t rxWords) in LPI2C_MasterSetWatermarks()
758 static inline void LPI2C_MasterGetFifoCounts(LPI2C_Type *base, size_t *rxCount, size_t *txCount) in LPI2C_MasterGetFifoCounts()
862 status_t LPI2C_MasterSend(LPI2C_Type *base, void *txBuff, size_t txSize);
877 status_t LPI2C_MasterReceive(LPI2C_Type *base, void *rxBuff, size_t rxSize);
962 status_t LPI2C_MasterTransferGetCount(LPI2C_Type *base, lpi2c_master_handle_t *handle, size_t *coun…
1279 status_t LPI2C_SlaveSend(LPI2C_Type *base, void *txBuff, size_t txSize, size_t *actualTxSize);
[all …]
/hal_nxp-latest/mcux/mcux-sdk/drivers/lpc_i2c/
Dfsl_i2c.h181size_t subaddressSize; /*!< Length of sub address to send in bytes. Maximum size is 4 bytes. */
183 size_t dataSize; /*!< Number of bytes to transfer. */
325 size_t txSize; /*!< Transfer size */
326 size_t rxSize; /*!< Transfer size */
327 size_t transferredCount; /*!< Number of bytes transferred during this transfer. */
642 status_t I2C_MasterWriteBlocking(I2C_Type *base, const void *txBuff, size_t txSize, uint32_t flags);
657 status_t I2C_MasterReadBlocking(I2C_Type *base, void *rxBuff, size_t rxSize, uint32_t flags);
718 status_t I2C_MasterTransferGetCount(I2C_Type *base, i2c_master_handle_t *handle, size_t *count);
877 status_t I2C_SlaveWriteBlocking(I2C_Type *base, const uint8_t *txBuff, size_t txSize);
890 status_t I2C_SlaveReadBlocking(I2C_Type *base, uint8_t *rxBuff, size_t rxSize);
[all …]
/hal_nxp-latest/mcux/mcux-sdk/drivers/lpflexcomm/lpuart/
Dfsl_lpuart.c63 static void LPUART_WriteNonBlocking(LPUART_Type *base, const uint8_t *data, size_t length);
74 static void LPUART_WriteNonBlocking16bit(LPUART_Type *base, const uint16_t *data, size_t length);
86 static void LPUART_ReadNonBlocking(LPUART_Type *base, uint8_t *data, size_t length);
97 static void LPUART_ReadNonBlocking16bit(LPUART_Type *base, uint16_t *data, size_t length);
141 size_t LPUART_TransferGetRxRingBufferLength(LPUART_Type *base, lpuart_handle_t *handle) in LPUART_TransferGetRxRingBufferLength()
145 size_t size; in LPUART_TransferGetRxRingBufferLength()
146 size_t tmpRxRingBufferSize = handle->rxRingBufferSize; in LPUART_TransferGetRxRingBufferLength()
152 size = ((size_t)tmpRxRingBufferHead + tmpRxRingBufferSize - (size_t)tmpRxRingBufferTail); in LPUART_TransferGetRxRingBufferLength()
156 size = ((size_t)tmpRxRingBufferHead - (size_t)tmpRxRingBufferTail); in LPUART_TransferGetRxRingBufferLength()
179 static void LPUART_WriteNonBlocking(LPUART_Type *base, const uint8_t *data, size_t length) in LPUART_WriteNonBlocking()
[all …]
/hal_nxp-latest/mcux/mcux-sdk/drivers/puf/
Dfsl_puf.h176 status_t PUF_Enroll(PUF_Type *base, uint8_t *activationCode, size_t activationCodeSize);
190 status_t PUF_Start(PUF_Type *base, const uint8_t *activationCode, size_t activationCodeSize);
210 …PUF_Type *base, puf_key_index_register_t keyIndex, size_t keySize, uint8_t *keyCode, size_t keyCod…
231 size_t userKeySize,
233 size_t keyCodeSize);
250 …us_t PUF_GetKey(PUF_Type *base, const uint8_t *keyCode, size_t keyCodeSize, uint8_t *key, size_t k…
270 …PUF_Type *base, const uint8_t *keyCode, size_t keyCodeSize, puf_key_slot_t keySlot, uint32_t keyMa…
/hal_nxp-latest/mcux/middleware/mcux-secure-subsystem/src/sscp/
Dfsl_sss_sscp.c123 …sss_sscp_symmetric_t *context, uint8_t *iv, size_t ivLen, const uint8_t *srcData, uint8_t *destDat… in sss_sscp_cipher_one_go()
157 sss_status_t sss_sscp_cipher_init(sss_sscp_symmetric_t *context, uint8_t *iv, size_t ivLen) in sss_sscp_cipher_init()
183 …sss_sscp_symmetric_t *context, const uint8_t *srcData, size_t srcLen, uint8_t *destData, size_t *d… in sss_sscp_cipher_update()
189 size_t len = (destLen != NULL) ? *destLen : srcLen; in sss_sscp_cipher_update()
223 …sss_sscp_symmetric_t *context, const uint8_t *srcData, size_t srcLen, uint8_t *destData, size_t *d… in sss_sscp_cipher_finish()
229 size_t len = (destLen != NULL) ? *destLen : srcLen; in sss_sscp_cipher_finish()
265 size_t size, in sss_sscp_cipher_crypt_ctr()
268 size_t *szLeft) in sss_sscp_cipher_crypt_ctr()
382 size_t size, in sss_sscp_aead_one_go()
384 size_t nonceLen, in sss_sscp_aead_one_go()
[all …]
/hal_nxp-latest/mcux/mcux-sdk/drivers/flexcomm/i2c/
Dfsl_i2c.h263size_t subaddressSize; /*!< Length of sub address to send in bytes. Maximum size is 4 bytes. */
265 size_t dataSize; /*!< Number of bytes to transfer. */
392 size_t txSize; /*!< Transfer size */
393 size_t rxSize; /*!< Transfer size */
394 size_t transferredCount; /*!< Number of bytes transferred during this transfer. */
736 status_t I2C_MasterWriteBlocking(I2C_Type *base, const void *txBuff, size_t txSize, uint32_t flags);
751 status_t I2C_MasterReadBlocking(I2C_Type *base, void *rxBuff, size_t rxSize, uint32_t flags);
812 status_t I2C_MasterTransferGetCount(I2C_Type *base, i2c_master_handle_t *handle, size_t *count);
977 status_t I2C_SlaveWriteBlocking(I2C_Type *base, const uint8_t *txBuff, size_t txSize);
990 status_t I2C_SlaveReadBlocking(I2C_Type *base, uint8_t *rxBuff, size_t rxSize);
[all …]
/hal_nxp-latest/mcux/mcux-sdk/components/log/
Dfsl_component_log_backend_ringbuffer.c32 size_t ringBufferLength;
33 size_t ringBufferHead;
34 size_t ringBufferTail;
41 __WEAK_FUNC void log_backend_ringbuffer_update(uint8_t *buffer, size_t head, size_t tail);
42 __WEAK_FUNC void log_backend_ringbuffer_update(uint8_t *buffer, size_t head, size_t tail) in log_backend_ringbuffer_update()
49 static void log_init_backend_ringbuffer_puts(uint8_t *buffer, size_t length);
63 static void log_init_backend_ringbuffer_puts(uint8_t *buffer, size_t length) in log_init_backend_ringbuffer_puts()
/hal_nxp-latest/mcux/mcux-sdk/utilities/debug_console_lite/
Dfsl_debug_console.c43 size_t length); /*!< put char function pointer */
46 size_t length); /*!< get char function pointer */
757 if (sizeof(size_t) == sizeof(uint32_t)) in DbgConsole_PrintfFormattedData()
761 else if (sizeof(size_t) == (2U * sizeof(uint32_t))) in DbgConsole_PrintfFormattedData()
765 else if (sizeof(size_t) == sizeof(uint16_t)) in DbgConsole_PrintfFormattedData()
1165 size_t __write(int handle, const unsigned char *buffer, size_t size);
1166 size_t __write(int handle, const unsigned char *buffer, size_t size) in __write()
1168 size_t ret; in __write()
1175 ret = (size_t)0; in __write()
1181 ret = (size_t)-1; in __write()
[all …]

12345678910>>...22