anchor.diff:  
     METHOD string_to_xstring_utf8.
   
  -    DATA: lo_obj TYPE REF TO cl_abap_conv_out_ce.
  -
  -
       TRY.
  -        lo_obj = cl_abap_conv_out_ce=>create( encoding = 'UTF-8' ).
  -
  -        lo_obj->convert( EXPORTING data = iv_string
  -                         IMPORTING buffer = rv_xstring ).
  +        IF go_convert_out IS INITIAL.
  +          go_convert_out = cl_abap_conv_out_ce=>create( encoding = 'UTF-8' ).
  +        ENDIF.
  +
  +        go_convert_out->convert(
  +          EXPORTING data = iv_string
  +          IMPORTING buffer = rv_xstring ).
   
         CATCH cx_parameter_invalid_range
               cx_sy_codepage_converter_init
  
positive.code: 
    METHOD xstring_to_string_utf8.
  
      DATA: lv_len TYPE i,
            lo_obj TYPE REF TO cl_abap_conv_in_ce.
  
  
      TRY.
          lo_obj = cl_abap_conv_in_ce=>create(
              input    = iv_data
              encoding = 'UTF-8' ).
          lv_len = xstrlen( iv_data ).
  
          lo_obj->read( EXPORTING n    = lv_len
                        IMPORTING data = rv_string ).
  
        CATCH cx_parameter_invalid_range
              cx_sy_codepage_converter_init
  
negative.code:         !et_bintab TYPE lvc_t_mime .
    PROTECTED SECTION.
    PRIVATE SECTION.
  
      CLASS-DATA go_convert_out TYPE REF TO cl_abap_conv_out_ce .
      CLASS-DATA go_convert_in TYPE REF TO cl_abap_conv_in_ce .
  ENDCLASS.
  
  
  