anchor.diff:      AddAll(VarToList(Container));
     end
     else if VarIsArray(Container) then begin
  -    N := Length(Container);
  +    Low := VarArrayLowBound(Container, 1);
  +    High := VarArrayHighBound(Container, 1);
  +    N := High - Low + 1;
       Grow(N);
  -    Low := VarArrayLowBound(Container, 1);
  -    High := Low + N - 1;
       for I := Low to High do Add(Container[I]);
     end;
   end;
  
positive.code:  *                                                        *
   * hprose common unit for delphi.                         *
   *                                                        *
   * LastModified: Dec 6, 2016                              *
   * Author: Ma Bingyao <andot@hprose.com>                  *
   *                                                        *
  \**********************************************************/
  
negative.code:   ReadWriteSync: Boolean);
  var
    AList: IList;
    N: Integer;
  begin
    if VarIsList(Container) then begin
      AList := VarToList(Container);
      Create(AList, Sync, ReadWriteSync);
    end
    else if VarIsArray(Container) then begin
      N := VarArrayHighBound(Container, 1) - VarArrayLowBound(Container, 1) + 1;
      Create(N, Sync, ReadWriteSync);
      AddAll(Container);
    end;
  end;
  
  