anchor.diff:  ENDCLASS.                    "lcx_exception IMPLEMENTATION
   
   *----------------------------------------------------------------------*
  -*       CLASS lcl_serialize DEFINITION
  +*       CLASS lcl_xml DEFINITION
   *----------------------------------------------------------------------*
   *
   *----------------------------------------------------------------------*
  -CLASS lcl_serialize DEFINITION FINAL.
  +CLASS lcl_xml DEFINITION FINAL.
   
     PUBLIC SECTION.
  -    CLASS-METHODS serialize IMPORTING iv_obj_type TYPE rseuap-obj_type
  -                                      iv_obj_name TYPE rseuap-obj_name
  -                            RETURNING value(rt_files) TYPE tt_files
  -                            RAISING lcx_exception.
  -
  -    CLASS-METHODS deserialize
  -                            IMPORTING it_files TYPE tt_files
  -                            RAISING lcx_exception.
  +    METHODS constructor.
  +    METHODS add_structure IMPORTING ig_structure TYPE data.
  +    METHODS render        RETURNING value(rv_string) TYPE string.
   
     PRIVATE SECTION.
  -    CLASS-METHODS p_serialize
  -                            IMPORTING iv_obj_name TYPE rseuap-obj_name
  -                            RETURNING value(rt_files) TYPE tt_files
  -                            RAISING lcx_exception.
  -    CLASS-METHODS p_deserialize.
  -
  -    CLASS-METHODS xml_root
  -                            EXPORTING ei_ixml TYPE REF TO if_ixml
  -                                      ei_xml_doc TYPE REF TO if_ixml_document
  -                                      ei_root TYPE REF TO if_ixml_element.
  -
  -    CLASS-METHODS xml_add_structure
  -                            IMPORTING ig_structure TYPE data
  -                                      ii_xml_doc TYPE REF TO if_ixml_document
  -                                      ii_root TYPE REF TO if_ixml_element.
  -
  -    CLASS-METHODS xml_render
  -                            IMPORTING ii_ixml TYPE REF TO if_ixml
  -                                      ii_xml_doc TYPE REF TO if_ixml_document
  -                            RETURNING value(rv_string) TYPE string.
  -
  -ENDCLASS.                    "lcl_serialize DEFINITION
  -
  -*----------------------------------------------------------------------*
  -*       CLASS lcl_serialize IMPLEMENTATION
  +    DATA: mi_ixml    TYPE REF TO if_ixml,
  +          mi_xml_doc TYPE REF TO if_ixml_document,
  +          mi_root    TYPE REF TO if_ixml_element.
  +
  +ENDCLASS.                    "lcl_xml DEFINITION
  +
  +*----------------------------------------------------------------------*
  +*       CLASS lcl_xml IMPLEMENTATION
   *----------------------------------------------------------------------*
   *
   *----------------------------------------------------------------------*
  -CLASS lcl_serialize IMPLEMENTATION.
  -
  -  METHOD serialize.
  -
  -    CASE iv_obj_type.
  -      WHEN 'P'.
  -        rt_files = p_serialize( iv_obj_name ).
  -      WHEN OTHERS.
  -        RAISE EXCEPTION TYPE lcx_exception
  -          EXPORTING
  -            iv_text = 'Serialize, unknown type'.            "#EC NOTEXT
  -    ENDCASE.
  -
  -  ENDMETHOD.                    "serialize
  -
  -  METHOD deserialize.
  -
  -* todo
  -    RETURN.
  -
  -  ENDMETHOD.                    "deserialize
  -
  -  METHOD p_serialize.
  -
  -    DATA: ls_prog_inf     TYPE rpy_prog,
  -          lv_program_name TYPE programm,
  -          lv_xml          TYPE string,
  -          lt_source       TYPE TABLE OF abaptxt255.
  -
  -
  -    lv_program_name = iv_obj_name.
  -
  -    CALL FUNCTION 'RPY_PROGRAM_READ'
  -      EXPORTING
  -*       LANGUAGE         = SY-LANGU
  -        program_name     = lv_program_name
  -*       WITH_INCLUDELIST = 'X'
  -      IMPORTING
  -        prog_inf         = ls_prog_inf
  -      TABLES
  -*       INCLUDE_TAB      =
  -        source_extended  = lt_source
  -*       TEXTELEMENTS     =
  -      EXCEPTIONS
  -        cancelled        = 1
  -        not_found        = 2
  -        permission_error = 3
  -        OTHERS           = 4.
  -    IF sy-subrc <> 0.
  -      RAISE EXCEPTION TYPE lcx_exception
  -        EXPORTING
  -          iv_text = 'Error reading program'.                "#EC NOTEXT
  -    ENDIF.
  -
  -    CLEAR: ls_prog_inf-creat_user,
  -           ls_prog_inf-mod_user,
  -           ls_prog_inf-mandant.
  -
  -
  -    DATA: li_ixml TYPE REF TO if_ixml,
  -          li_xml_doc TYPE REF TO if_ixml_document,
  -          li_root TYPE REF TO if_ixml_element.
  -
  -    xml_root( IMPORTING ei_ixml = li_ixml
  -                        ei_xml_doc = li_xml_doc
  -                        ei_root = li_root ).
  -    xml_add_structure( EXPORTING ig_structure = ls_prog_inf
  -                                 ii_xml_doc = li_xml_doc
  -                                 ii_root = li_root ).
  -    lv_xml = xml_render( ii_ixml = li_ixml
  -                         ii_xml_doc = li_xml_doc ).
  -
  -    BREAK-POINT.
  -
  -  ENDMETHOD.                    "p
  -
  -  METHOD xml_root.
  -
  -    ei_ixml = cl_ixml=>create( ).
  -    ei_xml_doc = ei_ixml->create_document( ).
  -
  -    ei_root = ei_xml_doc->create_element( 'abapGit' ).
  -    ei_root->set_attribute( name = 'version' value = 'foo' ).
  -    ei_root->set_attribute( name = 'type' value = 'bar' ).
  -    ei_xml_doc->append_child( ei_root ).
  +CLASS lcl_xml IMPLEMENTATION.
  +
  +  METHOD constructor.
  +
  +    mi_ixml = cl_ixml=>create( ).
  +    mi_xml_doc = mi_ixml->create_document( ).
  +
  +    mi_root = mi_xml_doc->create_element( 'abapGit' ).
  +    mi_root->set_attribute( name = 'version' value = 'foo' ). "#EC NOTEXT
  +    mi_root->set_attribute( name = 'type' value = 'bar' ).  "#EC NOTEXT
  +    mi_xml_doc->append_child( mi_root ).
   
     ENDMETHOD.                    "xml_root
   
  -  METHOD xml_add_structure.
  -
  -    DATA: li_element       TYPE REF TO if_ixml_element,
  -          li_structure     TYPE REF TO if_ixml_element,
  -          li_text          TYPE REF TO if_ixml_text,
  -          lv_string        TYPE string,
  -          lv_name          TYPE string,
  -          lo_descr_ref     TYPE REF TO cl_abap_structdescr.
  +  METHOD add_structure.
  +
  +    DATA: li_element   TYPE REF TO if_ixml_element,
  +          li_structure TYPE REF TO if_ixml_element,
  +          li_text      TYPE REF TO if_ixml_text,
  +          lv_string    TYPE string,
  +          lv_name      TYPE string,
  +          lo_descr_ref TYPE REF TO cl_abap_structdescr.
   
       FIELD-SYMBOLS: <ls_comp> TYPE abap_compdescr,
                      <lg_any>  TYPE any.
  
positive.code:   ENDMETHOD.                    "x_to_bitbyte
  
  ENDCLASS.                    "lcl_convert IMPLEMENTATION
  
  *----------------------------------------------------------------------*
  *       CLASS lcl_hash DEFINITION
  
negative.code:       lv_contents = lv_contents+4.
        IF xstrlen( lv_contents ) > 1 AND lv_contents(1) = '01'. " band 1
          CONCATENATE lv_pack lv_contents+1 INTO lv_pack IN BYTE MODE.
        ENDIF.
  
        cv_data = cv_data+lv_len.
  