anchor.diff:        }
   
     });
  +  }
  +  
  +  int _getIndexFromDistance(num distance){
  +    int index = 0;
  +    List<ProfilePoint> profilePoints = _traceDetails.profilePoints;
  +    for (int i = 0 ; i< profilePoints.length; i++){
  +      if (profilePoints[i].distance < distance){
  +        index = i;
  +      }else{
  +        return index;
  +      }
  +    }
  +    
  +    return index ;
     }
     
     SvgElement _buildProfileFragment( ElevetionValue elevetionValue,
  
positive.code:       verticalLineElement.style.width = '1px';
        verticalLineElement.style.backgroundColor = 'black';
        
        int index = ( clientX / width * _traceDetails.profilePoints.length ).toInt() ;
  
        if (  index >= 0 && index < _traceDetails.profilePoints.length  ){
          
          _currentProfilePoint = _traceDetails.profilePoints[index] ;
  
negative.code:   }
    
    num _getXPosition( int profilePointIndex){
      num numberOfAvailablePixels = width ;
      return ( _traceDetails.profilePoints[profilePointIndex].distance * numberOfAvailablePixels /_traceDetails.length);
    }
    
    num _getYPosition( int elevetion, int lowestElevetion, int heighestElevetion){
  