qbs* FUNC_VARIABLESIZE(int32*_FUNC_VARIABLESIZE_LONG_I){
qbs *tqbs;
ptrszint tmp_long;
int32 tmp_fileno;
uint32 qbs_tmp_base=qbs_tmp_list_nexti;
uint8 *tmp_mem_static_pointer=mem_static_pointer;
uint32 tmp_cmem_sp=cmem_sp;
#include "data56.txt"
mem_lock *sf_mem_lock;
new_mem_lock();
sf_mem_lock=mem_lock_tmp;
sf_mem_lock->type=3;
libqb_check_stack();
if (is_error_pending()) goto exit_subfunc;
S_24824:;
if ((-(*_FUNC_VARIABLESIZE_LONG_I!= -1 ))||is_error_pending()){
if(qbevent){evnt(21572);if(r)goto S_24824;}
do{
SUB_GETID(_FUNC_VARIABLESIZE_LONG_I);
if(!qbevent)break;evnt(21572);}while(r);
}
S_24827:;
if ((*__LONG_ERROR_HAPPENED)||is_error_pending()){
if(qbevent){evnt(21573);if(r)goto S_24827;}
do{
goto exit_subfunc;
if(!qbevent)break;evnt(21573);}while(r);
}
do{
*_FUNC_VARIABLESIZE_LONG_T=*(int32*)(((char*)__UDT_ID)+((0+540)));
if(!qbevent)break;evnt(21575);}while(r);
S_24831:;
if ((-(*_FUNC_VARIABLESIZE_LONG_T== 0 ))||is_error_pending()){
if(qbevent){evnt(21575);if(r)goto S_24831;}
do{
*_FUNC_VARIABLESIZE_LONG_T=*(int32*)(((char*)__UDT_ID)+((0+512)));
if(!qbevent)break;evnt(21575);}while(r);
}
do{
*_FUNC_VARIABLESIZE_LONG_BYTES=qb_safe_idiv((*_FUNC_VARIABLESIZE_LONG_T& 4095ll ), 8 );
if(!qbevent)break;evnt(21576);}while(r);
S_24835:;
if ((*_FUNC_VARIABLESIZE_LONG_T&*__LONG_ISUDT)||is_error_pending()){
if(qbevent){evnt(21578);if(r)goto S_24835;}
do{
*_FUNC_VARIABLESIZE_LONG_U=*_FUNC_VARIABLESIZE_LONG_T& 4095ll ;
if(!qbevent)break;evnt(21579);}while(r);
do{
*_FUNC_VARIABLESIZE_LONG_BYTES=qb_safe_idiv(((int32*)(__ARRAY_LONG_UDTXSIZE[0]))[array_check((*_FUNC_VARIABLESIZE_LONG_U)-__ARRAY_LONG_UDTXSIZE[4],__ARRAY_LONG_UDTXSIZE[5])], 8 );
if(!qbevent)break;evnt(21580);}while(r);
S_24838:;
if ((*(int16*)(((char*)__UDT_ID)+((0+520))))||is_error_pending()){
if(qbevent){evnt(21581);if(r)goto S_24838;}
do{
*_FUNC_VARIABLESIZE_LONG_BYTES=qb_safe_idiv(FUNC_UDTDYNLAYOUTSIZE(_FUNC_VARIABLESIZE_LONG_U), 8 );
if(!qbevent)break;evnt(21581);}while(r);
}
}
S_24842:;
if ((*_FUNC_VARIABLESIZE_LONG_T&*__LONG_ISSTRING)||is_error_pending()){
if(qbevent){evnt(21584);if(r)goto S_24842;}
S_24843:;
if ((*_FUNC_VARIABLESIZE_LONG_T&*__LONG_ISFIXEDLENGTH)||is_error_pending()){
if(qbevent){evnt(21585);if(r)goto S_24843;}
do{
*_FUNC_VARIABLESIZE_LONG_BYTES=*(int32*)(((char*)__UDT_ID)+((0+544)));
if(!qbevent)break;evnt(21586);}while(r);
}else{
S_24846:;
if ((*(int32*)(((char*)__UDT_ID)+((0+512))))||is_error_pending()){
if(qbevent){evnt(21588);if(r)goto S_24846;}
do{
SUB_GIVE_ERROR(qbs_new_txt_len("Cannot determine size of variable-length string array",53));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(21588);}while(r);
do{
goto exit_subfunc;
if(!qbevent)break;evnt(21588);}while(r);
}
do{
qbs_set(_FUNC_VARIABLESIZE_STRING_VARIABLESIZE,qbs_add(qbs_add(qbs_add(FUNC_SCOPE(),qbs_new_txt_len("STRING_",7)),qbs_rtrim(qbs_new_fixed((((uint8*)__UDT_ID)+((0+0))),256,1))),qbs_new_txt_len("->len",5)));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(21589);}while(r);
do{
goto exit_subfunc;
if(!qbevent)break;evnt(21590);}while(r);
}
}
S_24854:;
if ((*(int32*)(((char*)__UDT_ID)+((0+512))))||is_error_pending()){
if(qbevent){evnt(21594);if(r)goto S_24854;}
do{
qbs_set(_FUNC_VARIABLESIZE_STRING_N,qbs_rtrim(qbs_new_fixed((((uint8*)__UDT_ID)+((0+554))),256,1)));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(21595);}while(r);
do{
qbs_set(_FUNC_VARIABLESIZE_STRING_S,qbs_add(qbs_add(qbs_add(qbs__tostr((int32)(*_FUNC_VARIABLESIZE_LONG_BYTES),NULL,0),qbs_new_txt_len("*(",2)),_FUNC_VARIABLESIZE_STRING_N),qbs_new_txt_len("[2]&1)",6)));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(21596);}while(r);
do{
*_FUNC_VARIABLESIZE_LONG_ARRAYELEMENTS=*(int16*)(((char*)__UDT_ID)+((0+516)));
if(!qbevent)break;evnt(21597);}while(r);
S_24858:;
if ((-(*_FUNC_VARIABLESIZE_LONG_ARRAYELEMENTS== -1 ))||is_error_pending()){
if(qbevent){evnt(21597);if(r)goto S_24858;}
do{
*_FUNC_VARIABLESIZE_LONG_ARRAYELEMENTS= 1 ;
if(!qbevent)break;evnt(21597);}while(r);
}
S_24861:;
fornext_value3419= 1 ;
fornext_finalvalue3419=*_FUNC_VARIABLESIZE_LONG_ARRAYELEMENTS;
fornext_step3419= 1 ;
if (fornext_step3419<0) fornext_step_negative3419=1; else fornext_step_negative3419=0;
if (is_error_pending()) goto fornext_error3419;
goto fornext_entrylabel3419;
while(1){
fornext_value3419=fornext_step3419+(*_FUNC_VARIABLESIZE_LONG_I2);
fornext_entrylabel3419:
*_FUNC_VARIABLESIZE_LONG_I2=fornext_value3419;
if (fornext_step_negative3419){
if (fornext_value3419<fornext_finalvalue3419) break;
}else{
if (fornext_value3419>fornext_finalvalue3419) break;
}
fornext_error3419:;
if(qbevent){evnt(21598);if(r)goto S_24861;}
do{
qbs_set(_FUNC_VARIABLESIZE_STRING_S,qbs_add(qbs_add(qbs_add(qbs_add(qbs_add(_FUNC_VARIABLESIZE_STRING_S,qbs_new_txt_len("*",1)),_FUNC_VARIABLESIZE_STRING_N),qbs_new_txt_len("[",1)),qbs__tostr((int64)((*_FUNC_VARIABLESIZE_LONG_I2* 4 )-( 4 )+( 5 )),NULL,0)),qbs_new_txt_len("]",1)));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(21599);}while(r);
fornext_continue_3418:;
}
fornext_exit_3418:;
do{
qbs_set(_FUNC_VARIABLESIZE_STRING_VARIABLESIZE,qbs_add(qbs_add(qbs_new_txt_len("(",1),_FUNC_VARIABLESIZE_STRING_S),qbs_new_txt_len(")",1)));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(21601);}while(r);
do{
goto exit_subfunc;
if(!qbevent)break;evnt(21602);}while(r);
}
do{
qbs_set(_FUNC_VARIABLESIZE_STRING_VARIABLESIZE,qbs__tostr((int32)(*_FUNC_VARIABLESIZE_LONG_BYTES),NULL,0));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(21605);}while(r);
exit_subfunc:;
free_mem_lock(sf_mem_lock);
#include "free56.txt"
if ((tmp_mem_static_pointer>=mem_static)&&(tmp_mem_static_pointer<=mem_static_limit)) mem_static_pointer=tmp_mem_static_pointer; else mem_static_pointer=mem_static;
cmem_sp=tmp_cmem_sp;
qbs_maketmp(_FUNC_VARIABLESIZE_STRING_VARIABLESIZE);return _FUNC_VARIABLESIZE_STRING_VARIABLESIZE;
}
