Home
last modified time | relevance | path

Searched refs:ctx (Results 1 – 25 of 236) sorted by relevance

12345678910

/php-src/ext/gd/libgd/
H A Dgd_io.c50 (ctx->putC) (ctx, c); in gdPutC()
79 r = (ctx->getC) (ctx); in gdGetByte()
88 r = (ctx->getC) (ctx); in gdGetWord()
91 r = (ctx->getC) (ctx); in gdGetWord()
121 r = (ctx->getC) (ctx); in gdGetInt()
125 r = (ctx->getC) (ctx); in gdGetInt()
129 r = (ctx->getC) (ctx); in gdGetInt()
135 r = (ctx->getC) (ctx); in gdGetInt()
147 c = (ctx->getC) (ctx); in gdGetIntLSB()
154 c = (ctx->getC) (ctx); in gdGetIntLSB()
[all …]
H A Dgd_gif_out.c208 if( ctx->curx == ctx->Width ) { in BumpPixel()
282 memset(&ctx, 0, sizeof(ctx)); in GIFEncode()
297 ctx.CountDown = (long)ctx.Width * (long)ctx.Height; in GIFEncode()
315 ctx.curx = ctx.cury = 0; in GIFEncode()
530 ctx->maxcode = MAXCODE(ctx->n_bits = ctx->g_init_bits);
533 ctx->EOFCode = ctx->ClearCode + 1;
534 ctx->free_ent = ctx->ClearCode + 2;
645 ctx->cur_bits += ctx->n_bits;
657 if ( ctx->free_ent > ctx->maxcode || ctx->clear_flg ) {
661 ctx->maxcode = MAXCODE (ctx->n_bits = ctx->g_init_bits);
[all …]
H A Dgd_io_file.c33 gdIOCtx ctx; member
51 fileIOCtx *ctx; in gdNewFileCtx() local
55 ctx->f = f; in gdNewFileCtx()
57 ctx->ctx.getC = fileGetchar; in gdNewFileCtx()
58 ctx->ctx.putC = filePutchar; in gdNewFileCtx()
60 ctx->ctx.getBuf = fileGetbuf; in gdNewFileCtx()
61 ctx->ctx.putBuf = filePutbuf; in gdNewFileCtx()
63 ctx->ctx.tell = fileTell; in gdNewFileCtx()
64 ctx->ctx.seek = fileSeek; in gdNewFileCtx()
66 ctx->ctx.gd_free = gdFreeFileCtx; in gdNewFileCtx()
[all …]
H A Dgd_io_ss.c34 gdIOCtx ctx; member
52 ssIOCtxPtr ctx; in gdNewSSCtx() local
56 ctx->src = src; in gdNewSSCtx()
59 ctx->ctx.getC = sourceGetchar; in gdNewSSCtx()
60 ctx->ctx.getBuf = sourceGetbuf; in gdNewSSCtx()
62 ctx->ctx.putC = sinkPutchar; in gdNewSSCtx()
63 ctx->ctx.putBuf = sinkPutbuf; in gdNewSSCtx()
65 ctx->ctx.tell = NULL; in gdNewSSCtx()
66 ctx->ctx.seek = NULL; in gdNewSSCtx()
68 ctx->ctx.gd_free = gdFreeSsCtx; in gdNewSSCtx()
[all …]
/php-src/ext/dom/lexbor/lexbor/encoding/
H A Ddecode.c90 if ((ctx->buffer_used + ctx->replace_len) > ctx->buffer_length) { \
99 memcpy(&ctx->buffer_out[ctx->buffer_used], ctx->replace_to, \
225 if ((ctx->buffer_used + 2) > ctx->buffer_length) { in lxb_encoding_decode_big5()
365 LXB_ENCODING_DECODE_APPEND_WO_CHECK(ctx, ctx->codepoint); in lxb_encoding_decode_big5()
1176 ctx->codepoint = (lead - ctx->second_codepoint) * 188 in lxb_encoding_decode_shift_jis()
1370 if (ctx->buffer_used >= ctx->buffer_length) { in lxb_encoding_decode_utf_8()
1586 if (ctx->buffer_used == ctx->buffer_length) { in lxb_encoding_decode_gb18030()
1761 if (ctx->buffer_used == ctx->buffer_length) { in lxb_encoding_decode_gb18030()
1966 ctx->codepoint = ctx->second_codepoint; in lxb_encoding_decode_big5_single()
2667 ctx->codepoint = (lead - ctx->second_codepoint) * 188 in lxb_encoding_decode_shift_jis_single()
[all …]
H A Dencode.c40 if ((ctx->buffer_used + ctx->replace_len) > ctx->buffer_length) { \
44 memcpy(&ctx->buffer_out[ctx->buffer_used], ctx->replace_to, \
58 if ((ctx->buffer_used + ctx->replace_len) > ctx->buffer_length) { \
63 memcpy(&ctx->buffer_out[ctx->buffer_used], ctx->replace_to, \
159 if ((ctx->buffer_used + 2) > ctx->buffer_length) { in lxb_encoding_encode_big5()
206 ctx->buffer_out[ ctx->buffer_used++ ] = 0x8E; in lxb_encoding_encode_euc_jp()
223 if ((ctx->buffer_used + 2) > ctx->buffer_length) { in lxb_encoding_encode_euc_jp()
256 if ((ctx->buffer_used + 2) > ctx->buffer_length) { in lxb_encoding_encode_euc_kr()
733 ctx->buffer_out[ctx->buffer_used++] = cp >> 8; in lxb_encoding_encode_utf_16_write()
739 ctx->buffer_out[ctx->buffer_used++] = cp & 0x00FF; in lxb_encoding_encode_utf_16_write()
[all …]
H A Ddecode.h19 lxb_encoding_decode_default(lxb_encoding_decode_t *ctx,
23 lxb_encoding_decode_auto(lxb_encoding_decode_t *ctx,
27 lxb_encoding_decode_undefined(lxb_encoding_decode_t *ctx,
31 lxb_encoding_decode_big5(lxb_encoding_decode_t *ctx,
35 lxb_encoding_decode_euc_jp(lxb_encoding_decode_t *ctx,
39 lxb_encoding_decode_euc_kr(lxb_encoding_decode_t *ctx,
43 lxb_encoding_decode_gbk(lxb_encoding_decode_t *ctx,
47 lxb_encoding_decode_ibm866(lxb_encoding_decode_t *ctx,
107 lxb_encoding_decode_koi8_r(lxb_encoding_decode_t *ctx,
111 lxb_encoding_decode_koi8_u(lxb_encoding_decode_t *ctx,
[all …]
H A Dencode.h19 lxb_encoding_encode_default(lxb_encoding_encode_t *ctx,const lxb_codepoint_t **cp,
23 lxb_encoding_encode_auto(lxb_encoding_encode_t *ctx, const lxb_codepoint_t **cp,
27 lxb_encoding_encode_undefined(lxb_encoding_encode_t *ctx, const lxb_codepoint_t **cp,
31 lxb_encoding_encode_big5(lxb_encoding_encode_t *ctx, const lxb_codepoint_t **cp,
35 lxb_encoding_encode_euc_jp(lxb_encoding_encode_t *ctx, const lxb_codepoint_t **cp,
39 lxb_encoding_encode_euc_kr(lxb_encoding_encode_t *ctx, const lxb_codepoint_t **cp,
43 lxb_encoding_encode_gbk(lxb_encoding_encode_t *ctx, const lxb_codepoint_t **cp,
47 lxb_encoding_encode_ibm866(lxb_encoding_encode_t *ctx, const lxb_codepoint_t **cp,
55 lxb_encoding_encode_iso_2022_jp_eof(lxb_encoding_encode_t *ctx);
221 lxb_encoding_encode_gbk_single(lxb_encoding_encode_t *ctx, lxb_char_t **data,
[all …]
/php-src/ext/dom/
H A Dhtml5_serializer.c38 TRY(ctx->write_string(ctx->application_data, (const char *) dtd->name)); in dom_html5_serialize_doctype()
39 return ctx->write_string_len(ctx->application_data, ">", strlen(">")); in dom_html5_serialize_doctype()
44 TRY(ctx->write_string_len(ctx->application_data, "<!--", strlen("<!--"))); in dom_html5_serialize_comment()
53 TRY(ctx->write_string_len(ctx->application_data, "<?", strlen("<?"))); in dom_html5_serialize_processing_instruction()
54 TRY(ctx->write_string(ctx->application_data, (const char *) node->name)); in dom_html5_serialize_processing_instruction()
55 TRY(ctx->write_string_len(ctx->application_data, " ", strlen(" "))); in dom_html5_serialize_processing_instruction()
59 return ctx->write_string_len(ctx->application_data, ">", strlen(">")); in dom_html5_serialize_processing_instruction()
64 TRY(ctx->write_string_len(ctx->application_data, "&", strlen("&"))); in dom_html5_serialize_entity_ref()
66 return ctx->write_string_len(ctx->application_data, ";", strlen(";")); in dom_html5_serialize_entity_ref()
166 TRY(ctx->write_string_len(ctx->application_data, ":", strlen(":"))); in dom_html5_serialize_element_tag_name()
[all …]
/php-src/ext/dom/lexbor/lexbor/css/property/
H A Dstate.h19 const lxb_css_syntax_token_t *token, void *ctx);
22 const lxb_css_syntax_token_t *token, void *ctx);
25 const lxb_css_syntax_token_t *token, void *ctx);
28 const lxb_css_syntax_token_t *token, void *ctx);
31 const lxb_css_syntax_token_t *token, void *ctx);
34 const lxb_css_syntax_token_t *token, void *ctx);
37 const lxb_css_syntax_token_t *token, void *ctx);
55 const lxb_css_syntax_token_t *token, void *ctx);
115 const lxb_css_syntax_token_t *token, void *ctx);
124 const lxb_css_syntax_token_t *token, void *ctx);
[all …]
/php-src/ext/opcache/jit/ir/
H A Dir.c361 …memcpy(buf, ctx->ir_base - ctx->consts_count, (ctx->consts_count + ctx->insns_count) * sizeof(ir_i…
363 ctx->insns_limit = ctx->insns_count;
2409 ctx->control = ir_emit3(ctx, IR_UNREACHABLE, ctx->control, IR_UNUSED, ctx->ir_base[1].op1);
2587 ctx->control = ir_emit3(ctx, IR_RETURN, ctx->control, val, ctx->ir_base[1].op1);
2595 ctx->control = ir_emit3(ctx, IR_IJMP, ctx->control, addr, ctx->ir_base[1].op1);
2738 ctx->control = ir_emit2(ctx, IR_AFREE, ctx->control, size);
2833 ctx->control = ir_emit3(ctx, IR_VSTORE, ctx->control, var, val);
2851 ctx->control = ir_emit3(ctx, IR_RSTORE, ctx->control, val, reg);
2928 ctx->control = ir_emit3(ctx, IR_STORE, ctx->control, addr, val);
2934 ctx->control = ir_emit2(ctx, IR_VA_START, ctx->control, list);
[all …]
H A Dir_sccp.c539 ir_use_list_add(ctx, ctx->fold_insn.op1, ref); in ir_sccp_fold2()
547 ir_use_list_add(ctx, ctx->fold_insn.op2, ref); in ir_sccp_fold2()
555 ir_use_list_add(ctx, ctx->fold_insn.op3, ref); in ir_sccp_fold2()
575 op1 = ir_const(ctx, ctx->fold_insn.val, ctx->fold_insn.type); in ir_sccp_fold2()
591 next = ctx->use_edges[ctx->use_lists[dst].refs]; in ir_sccp_remove_if()
1089 ctx->use_lists = ir_mem_realloc(ctx->use_lists, ctx->insns_count * sizeof(ir_use_list)); in ir_ext_ref()
1152 use = ctx->use_edges[ctx->use_lists[ref].refs + n]; in ir_try_promote_ext()
1167 ctx->ir_base[use].op1 = ir_ext_const(ctx, &ctx->ir_base[use_insn->op1], op, type); in ir_try_promote_ext()
1175 ctx->ir_base[use].op2 = ir_ext_const(ctx, &ctx->ir_base[use_insn->op2], op, type); in ir_try_promote_ext()
1188 ctx->ir_base[ref].op2 = ir_ext_const(ctx, &ctx->ir_base[phi_insn->op2], op, type); in ir_try_promote_ext()
[all …]
H A Dir_ra.c1743 ival = ctx->live_intervals[ctx->vregs[i]]; in ir_swap_operands()
1817 && ctx->vregs[insn->op1] != ctx->vregs[i] in ir_try_swap_operands()
1818 && !ir_vregs_overlap(ctx, ctx->vregs[insn->op1], ctx->vregs[i]) in ir_try_swap_operands()
1819 && !ir_hint_conflict(ctx, i, ctx->vregs[insn->op1], ctx->vregs[i])) { in ir_try_swap_operands()
1822 if (ctx->vregs[insn->op2] && ctx->vregs[insn->op2] != ctx->vregs[i]) { in ir_try_swap_operands()
1837 if (!ir_vregs_overlap(ctx, ctx->vregs[insn->op2], ctx->vregs[i]) in ir_try_swap_operands()
1838 && !ir_hint_conflict(ctx, i, ctx->vregs[insn->op2], ctx->vregs[i])) { in ir_try_swap_operands()
2006 if (ir_vregs_inside(ctx, ctx->vregs[insn->op1], ctx->vregs[i])) { in ir_coalesce()
2014 ir_vregs_coalesce(ctx, ctx->vregs[i], ctx->vregs[insn->op1], i, insn->op1); in ir_coalesce()
2049 ctx->vregs[j] = xlat[ctx->vregs[j]]; in ir_coalesce()
[all …]
H A Dir_gcm.c88 if (ctx->ir_base[ref].op >= IR_EQ && ctx->ir_base[ref].op <= IR_UGT) { in ir_gcm_select_best_block()
104 && !(ctx->binding && ir_binding_find(ctx, ref))) { in ir_gcm_select_best_block()
139 && !(ctx->binding && ir_binding_find(ctx, ref))) { in ir_gcm_select_best_block()
268 _push_predecessors(ctx, &ctx->cfg_blocks[i], data); in ir_split_partially_dead_node()
408 ctx->use_lists = ir_mem_realloc(ctx->use_lists, ctx->insns_count * sizeof(ir_use_list)); in ir_split_partially_dead_node()
409 ctx->cfg_map = ir_mem_realloc(ctx->cfg_map, ctx->insns_count * sizeof(uint32_t)); in ir_split_partially_dead_node()
469 ir_check(ctx); in ir_split_partially_dead_node()
504 use = ctx->use_edges[ctx->use_lists[ref].refs + n]; in ir_gcm_schedule_late()
718 ctx->data = NULL; in ir_gcm()
1278 ir_free(ctx); in ir_schedule()
[all …]
H A Dir_gdb.c200 ctx->p = p; in ir_gdbjit_strz()
211 ctx->p = p; in ir_gdbjit_uleb128()
221 ctx->p = p; in ir_gdbjit_sleb128()
274 sym->name = ir_gdbjit_strz(ctx, ctx->name); in ir_gdbjit_symtab()
294 #define DUV(x) (ctx->p = p, ir_gdbjit_uleb128(ctx, (x)), p = ctx->p)
295 #define DSV(x) (ctx->p = p, ir_gdbjit_sleb128(ctx, (x)), p = ctx->p)
296 #define DSTR(str) (ctx->p = p, ir_gdbjit_strz(ctx, (str)), p = ctx->p)
451 ctx->startp = ctx->p; in ir_gdbjit_initsect()
452 ctx->obj.sect[sect].ofs = (uintptr_t)((char *)ctx->p - (char *)&ctx->obj); in ir_gdbjit_initsect()
457 ctx->obj.sect[sect].size = (uintptr_t)(ctx->p - ctx->startp); in ir_gdbjit_initsect_done()
[all …]
H A Dir_emit.c266 ival1 = ctx->live_intervals[ctx->vregs[r1]]; in ir_is_same_mem_var()
311 void *addr = (ctx->loader && ctx->loader->resolve_sym_name) ? in ir_sym_addr()
312 ctx->loader->resolve_sym_name(ctx->loader, name, 0) : in ir_sym_addr()
322 void *addr = (ctx->loader && ctx->loader->resolve_sym_name) ? in ir_sym_val()
449 IR_ASSERT(ref >= 0 && ctx->vregs[ref] && ctx->live_intervals[ctx->vregs[ref]]); in ir_emit_osr_entry_loads()
452 ir_reg reg = ctx->live_intervals[ctx->vregs[ref]]->reg; in ir_emit_osr_entry_loads()
631 ir_load_local_addr(ctx, to, -from - ctx->consts_count); in ir_emit_dessa_move()
664 ir_load_local_addr(ctx, tmp_reg, -from - ctx->consts_count); in ir_emit_dessa_move()
969 ctx->rules = ir_mem_calloc(ctx->insns_count, sizeof(uint32_t)); in ir_match()
1019 ctx->rules[ref] = rule = ir_match_insn(ctx, ref); in ir_match()
[all …]
H A Dir_save.c63 } else if (ctx->vregs[input] != ctx->vregs[use_ref]) { in ir_save_dessa_moves()
68 if (ctx->regs) { in ir_save_dessa_moves()
77 if (ctx->regs) { in ir_save_dessa_moves()
118 && ctx->cfg_map in ir_save()
120 && ctx->cfg_blocks[ctx->cfg_map[i]].start == i) { in ir_save()
170 if (ctx->vregs && ctx->vregs[i]) { in ir_save()
188 if (ctx->vregs && ctx->vregs[i]) { in ir_save()
227 if (ctx->vregs && ref > 0 && ctx->vregs[ref]) { in ir_save()
290 && ctx->cfg_map in ir_save()
346 && ctx->cfg_map in ir_save()
[all …]
/php-src/ext/hash/
H A Dhash_murmur.c70 ctx->h = PMurHash32_Result(ctx->h, ctx->carry, ctx->len); in PHP_MURMUR3AFinal()
116 memset(&ctx->h, 0, sizeof ctx->h); in PHP_MURMUR3CInit()
119 memset(&ctx->h, 0, sizeof ctx->h); in PHP_MURMUR3CInit()
122 memset(&ctx->h, 0, sizeof ctx->h); in PHP_MURMUR3CInit()
124 memset(&ctx->carry, 0, sizeof ctx->carry); in PHP_MURMUR3CInit()
137 PMurHash128x86_Result(ctx->h, ctx->carry, ctx->len, h); in PHP_MURMUR3CFinal()
193 memset(&ctx->h, 0, sizeof ctx->h); in PHP_MURMUR3FInit()
196 memset(&ctx->h, 0, sizeof ctx->h); in PHP_MURMUR3FInit()
199 memset(&ctx->h, 0, sizeof ctx->h); in PHP_MURMUR3FInit()
201 memset(&ctx->carry, 0, sizeof ctx->carry); in PHP_MURMUR3FInit()
[all …]
H A Dhash_xxhash.c43 memset(&ctx->s, 0, sizeof ctx->s); in PHP_XXH32Init()
59 XXH32_reset(&ctx->s, 0); in PHP_XXH32Init()
64 XXH32_update(&ctx->s, in, len); in PHP_XXH32Update()
85 && ctx->s.memsize < 16) { in php_hash_xxh32_unserialize()
110 memset(&ctx->s, 0, sizeof ctx->s); in PHP_XXH64Init()
124 XXH64_reset(&ctx->s, 0); in PHP_XXH64Init()
164 memset(&ctx->s, 0, sizeof ctx->s); in _PHP_XXH3_Init()
200 len = sizeof(ctx->secret); in _PHP_XXH3_Init()
205 func_init_secret(&ctx->s, ctx->secret, len); in _PHP_XXH3_Init()
210 func_init_seed(&ctx->s, 0); in _PHP_XXH3_Init()
[all …]
/php-src/ext/hash/tests/
H A Dmurmurhash3_seed.phpt7 hash_update($ctx, "Two");
8 hash_update($ctx, " hashes");
9 hash_update($ctx, " meet");
10 hash_update($ctx, " in");
11 hash_update($ctx, " a");
12 hash_update($ctx, " bar.");
13 $h0 = hash_final($ctx);
20 hash_update($ctx, "Two");
24 hash_update($ctx, " a");
26 $h0 = hash_final($ctx);
[all …]
/php-src/ext/sockets/
H A Dconversions.c187 do_from_to_zval_err(&ctx->err, &ctx->keys, "user", fmt, ap); in do_from_zval_err()
196 do_from_to_zval_err(&ctx->err, &ctx->keys, "native", fmt, ap); in do_to_zval_err()
743 if (ctx->sock->type != AF_INET && ctx->sock->type != AF_INET6) { in from_zval_write_sockaddr_aux()
1289 do_from_zval_err(ctx, in from_zval_write_ifindex()
1484 ser_context ctx; in from_zval_run_conversions() local
1493 memset(&ctx, 0, sizeof(ctx)); in from_zval_run_conversions()
1497 ctx.sock = sock; in from_zval_run_conversions()
1510 *err = ctx.err; in from_zval_run_conversions()
1527 res_context ctx; in to_zval_run_conversions() local
1534 memset(&ctx, 0, sizeof(ctx)); in to_zval_run_conversions()
[all …]
/php-src/Zend/Optimizer/
H A Ddce.c318 zend_ssa *ssa = ctx->ssa; in add_phi_sources_to_worklists()
414 zend_ssa *ssa = ctx->ssa; in dce_instr()
441 zend_bitset_excl(ctx->instr_dead, opline - ctx->op_array->opcodes); in dce_instr()
487 zend_ssa *ssa = ctx->ssa; in try_remove_trivial_phi()
534 context ctx; in dce_optimize_op_array() local
535 ctx.ssa = ssa; in dce_optimize_op_array()
536 ctx.op_array = op_array; in dce_optimize_op_array()
550 memset(ctx.phi_dead, 0xff, sizeof(zend_ulong) * ctx.phi_worklist_len); in dce_optimize_op_array()
615 while (!zend_bitset_empty(ctx.instr_worklist, ctx.instr_worklist_len) in dce_optimize_op_array()
616 || !zend_bitset_empty(ctx.phi_worklist, ctx.phi_worklist_len)) { in dce_optimize_op_array()
[all …]
/php-src/ext/standard/
H A Dcrypt_sha256.c176 ctx->H[0] = a; in sha256_process_block()
177 ctx->H[1] = b; in sha256_process_block()
178 ctx->H[2] = c; in sha256_process_block()
179 ctx->H[3] = d; in sha256_process_block()
199 ctx->total[0] = ctx->total[1] = 0; in sha256_init_ctx()
230 sha256_process_block(ctx->buffer, bytes + pad + 8, ctx); in sha256_finish_ctx()
252 sha256_process_block(ctx->buffer, ctx->buflen & ~63, ctx); in sha256_process_bytes()
255 memcpy(ctx->buffer, &ctx->buffer[(left_over + add) & ~63], ctx->buflen); in sha256_process_bytes()
290 sha256_process_block(ctx->buffer, 64, ctx); in sha256_process_bytes()
292 memcpy(ctx->buffer, &ctx->buffer[64], left_over); in sha256_process_bytes()
[all …]
H A Dcrypt_sha512.c207 ctx->H[0] = a; in sha512_process_block()
208 ctx->H[1] = b; in sha512_process_block()
209 ctx->H[2] = c; in sha512_process_block()
210 ctx->H[3] = d; in sha512_process_block()
211 ctx->H[4] = e; in sha512_process_block()
212 ctx->H[5] = f; in sha512_process_block()
230 ctx->total[0] = ctx->total[1] = 0; in sha512_init_ctx()
283 sha512_process_block(ctx->buffer, ctx->buflen & ~127, ctx); in sha512_process_bytes()
327 sha512_process_block(ctx->buffer, 128, ctx); in sha512_process_bytes()
329 memcpy(ctx->buffer, &ctx->buffer[128], left_over); in sha512_process_bytes()
[all …]
/php-src/sapi/apache2handler/
H A Dsapi_apache2.c77 r = ctx->r; in ZEND_TSRMLS_CACHE_DEFINE()
171 ap_set_content_type(ctx->r, apr_pstrdup(ctx->r->pool, ctx->content_type)); in php_apache_sapi_send_headers()
187 r = ctx->r; in php_apache_sapi_read_post()
224 ctx->finfo.st_uid = ctx->r->finfo.user; in php_apache_sapi_get_stat()
225 ctx->finfo.st_gid = ctx->r->finfo.group; in php_apache_sapi_get_stat()
227 ctx->finfo.st_dev = ctx->r->finfo.device; in php_apache_sapi_get_stat()
228 ctx->finfo.st_ino = ctx->r->finfo.inode; in php_apache_sapi_get_stat()
232 ctx->finfo.st_size = ctx->r->finfo.size; in php_apache_sapi_get_stat()
233 ctx->finfo.st_nlink = ctx->r->finfo.nlink; in php_apache_sapi_get_stat()
301 r = ctx->r; in php_apache_sapi_flush()
[all …]

Completed in 109 milliseconds

12345678910