anchor.diff:      var sofar = targettext.split('').getRange(0, _currentposition + 1);
       return 100 - (_errors.toDouble() / sofar.length.toDouble() * 100).round();
     }
  -  void checkAtPosition(int index, String character) {
  -    typeCheck[index] = (targetCharAtPosition == character) ? true : false;
  +  void checkAtPosition(int pos, String character) {
  +    typeCheck[pos] = (targettext.split('')[pos] == character);
     }
     
     void handleKeyEvent(Event e) {  
  
positive.code:       default:
          var te = querySelector('#test');
          var typed = tinput.value.split('')[_currentposition];
          if (typed != charAtCurrentPosition()) {
            
          
  
negative.code:   int _currentposition = 0;
    String targettext;
    int _errors;
    Map<int,bool> typeCheck = new Map<int,bool>();
    
    Trainer(this.targettext);
  
  