qbs* FUNC_GETPREVELEMENT(qbs*_FUNC_GETPREVELEMENT_STRING_A,int32*_FUNC_GETPREVELEMENT_LONG_INDEX,int32*_FUNC_GETPREVELEMENT_LONG_STRINDEX){
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 "data135.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;
do{
if(!qbevent)break;evnt(28165,68,"elements.bas");}while(r);
S_36873:;
if ((-(*_FUNC_GETPREVELEMENT_LONG_STRINDEX== 0 ))||is_error_pending()){
if(qbevent){evnt(28165,70,"elements.bas");if(r)goto S_36873;}
do{
*_FUNC_GETPREVELEMENT_LONG_STRINDEX=_FUNC_GETPREVELEMENT_STRING_A->len;
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28165,70,"elements.bas");}while(r);
do{
*_FUNC_GETPREVELEMENT_LONG_INDEX=FUNC_NUMELEMENTS(_FUNC_GETPREVELEMENT_STRING_A)+ 1 ;
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28165,70,"elements.bas");}while(r);
}
S_36877:;
if ((-(*_FUNC_GETPREVELEMENT_LONG_STRINDEX== -1 ))||is_error_pending()){
if(qbevent){evnt(28165,71,"elements.bas");if(r)goto S_36877;}
do{
*_FUNC_GETPREVELEMENT_LONG_INDEX= -1 ;
if(!qbevent)break;evnt(28165,71,"elements.bas");}while(r);
do{
goto exit_subfunc;
if(!qbevent)break;evnt(28165,71,"elements.bas");}while(r);
}
S_36881:;
if ((-(*_FUNC_GETPREVELEMENT_LONG_STRINDEX> 0 ))||is_error_pending()){
if(qbevent){evnt(28165,73,"elements.bas");if(r)goto S_36881;}
do{
*_FUNC_GETPREVELEMENT_LONG_I=func__instrrev(*_FUNC_GETPREVELEMENT_LONG_STRINDEX,_FUNC_GETPREVELEMENT_STRING_A,__STRING1_SP,0|1);
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28165,73,"elements.bas");}while(r);
}
S_36884:;
if ((*_FUNC_GETPREVELEMENT_LONG_I)||is_error_pending()){
if(qbevent){evnt(28165,75,"elements.bas");if(r)goto S_36884;}
do{
qbs_set(_FUNC_GETPREVELEMENT_STRING_GETPREVELEMENT,func_mid(_FUNC_GETPREVELEMENT_STRING_A,*_FUNC_GETPREVELEMENT_LONG_I+ 1 ,*_FUNC_GETPREVELEMENT_LONG_STRINDEX-*_FUNC_GETPREVELEMENT_LONG_I,0|1));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28165,76,"elements.bas");}while(r);
do{
*_FUNC_GETPREVELEMENT_LONG_STRINDEX=*_FUNC_GETPREVELEMENT_LONG_I- 1 ;
if(!qbevent)break;evnt(28165,77,"elements.bas");}while(r);
do{
*_FUNC_GETPREVELEMENT_LONG_INDEX=*_FUNC_GETPREVELEMENT_LONG_INDEX- 1 ;
if(!qbevent)break;evnt(28165,78,"elements.bas");}while(r);
S_36888:;
if ((-(*_FUNC_GETPREVELEMENT_LONG_STRINDEX== 0 ))||is_error_pending()){
if(qbevent){evnt(28165,82,"elements.bas");if(r)goto S_36888;}
do{
*_FUNC_GETPREVELEMENT_LONG_STRINDEX= -2 ;
if(!qbevent)break;evnt(28165,82,"elements.bas");}while(r);
}
S_36891:;
}else{
if (-(*_FUNC_GETPREVELEMENT_LONG_STRINDEX!= -1 )){
if(qbevent){evnt(28165,83,"elements.bas");if(r)goto S_36891;}
do{
qbs_set(_FUNC_GETPREVELEMENT_STRING_GETPREVELEMENT,func_mid(_FUNC_GETPREVELEMENT_STRING_A, 1 ,*_FUNC_GETPREVELEMENT_LONG_STRINDEX,0|1));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28165,84,"elements.bas");}while(r);
do{
*_FUNC_GETPREVELEMENT_LONG_STRINDEX= -1 ;
if(!qbevent)break;evnt(28165,85,"elements.bas");}while(r);
do{
*_FUNC_GETPREVELEMENT_LONG_INDEX=*_FUNC_GETPREVELEMENT_LONG_INDEX- 1 ;
if(!qbevent)break;evnt(28165,86,"elements.bas");}while(r);
}else{
do{
*_FUNC_GETPREVELEMENT_LONG_INDEX= -1 ;
if(!qbevent)break;evnt(28165,88,"elements.bas");}while(r);
}
}
exit_subfunc:;
free_mem_lock(sf_mem_lock);
#include "free135.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_GETPREVELEMENT_STRING_GETPREVELEMENT);return _FUNC_GETPREVELEMENT_STRING_GETPREVELEMENT;
}
