anchor.diff:                                   iv_path TYPE string
                          CHANGING ct_latest TYPE tt_latest.
   
  +    CLASS-METHODS get_length EXPORTING ev_length TYPE i
  +                             CHANGING cv_data TYPE xstring.
  +
   ENDCLASS.                    "lcl_pack DEFINITION
   
   *----------------------------------------------------------------------*
  
positive.code:                                  iv_data TYPE xstring
                         RETURNING value(rv_sha1) TYPE t_sha1.
  
  ENDCLASS.                    "lcl_hash DEFINITION
  
  *----------------------------------------------------------------------*
  
negative.code: *----------------------------------------------------------------------*
  FORM run.
  
    DATA: lv_repo TYPE string VALUE '/larshp/Foobar'.                " 100%
  *  DATA: lv_repo TYPE string VALUE '/larshp/MouseChase'.            " 100%
  *  DATA: lv_repo TYPE string VALUE '/larshp/Dicing'.                " 100%
  *  DATA: lv_repo TYPE string VALUE '/larshp/Datamatrix'.            " 100% password protected
  *  DATA: lv_repo TYPE string VALUE '/snowplow/snowplow'.            " base not found, 10000 ref deltas, multiple parents
  *  DATA: lv_repo TYPE string VALUE '/rvanmil/ABAP-Regex-Training'.  " 100%
  *  DATA: lv_repo TYPE string VALUE '/sciruela/ABAP-Exercises'.      " 100%
  *  DATA: lv_repo TYPE string VALUE '/adsworth/ABAP-Utils'.          " 100%
  *  DATA: lv_repo TYPE string VALUE '/rvanmil/Run-ABAP-Code'.        " 100%
  *  DATA: lv_repo TYPE string VALUE '/rvanmil/ABAP-OOP-Library'.     " 100%
  *  DATA: lv_repo TYPE string VALUE '/ivanfemia/abap2xlsx'.          " base not found, 2000 ref deltas, multiple parents
  *  DATA: lv_repo TYPE string VALUE '/InfoSize/abapsourcesearch'.    " 100%
  *  DATA: lv_repo TYPE string VALUE '/google/flatbuffers'.           " 100%
  *  DATA: lv_repo TYPE string VALUE '/antiboredom/videogrep'.        " 100%
  *  DATA: lv_repo TYPE string VALUE '/idank/explainshell'.           " 100%
  *  DATA: lv_repo TYPE string VALUE '/education/teachers_pet'.       " base not found, 694 ref deltas, multiple parents
  *  DATA: lv_repo TYPE string VALUE '/gmarik/Vundle.vim'.            " base not found, 829 ref deltas, multiple parents
  *  DATA: lv_repo TYPE string VALUE '/mephux/komanda'.               " base not found, 685 ref deltas, multiple parents
  *  DATA: lv_repo TYPE string VALUE '/mrmrs/colors'.                 " 100%
  *  DATA: lv_repo TYPE string VALUE '/montagejs/collections'.        " 100%
  
    DATA: lv_pack    TYPE xstring,
          lt_latest  TYPE tt_latest,
  