anchor.diff:    }
   
     _updateAnimations() {
  -    print("_update");
       if (appModel.working) {
  -      print("  working");
         animArcCounter = Tween<double>(begin: counter, end: 0.5)
           .animate(CurvedAnimation(parent: animCtrlArcCounter, curve: Curves.ease))
           ..addListener(() {
  
positive.code:       animCtrlArcAlpha.forward();
        animCtrlArc2Counter.reverse();
      } else {
        print("  notworking");
        animCtrlLoading.reverse();
        if (appModel.state == AppState.paused || appModel.state == AppState.deactivated) {
          animCtrlArcAlpha.reverse();
  
negative.code:       // loading arc and blocked counter
        canvas.drawArc(
            Rect.fromLTWH(- ringWith * 1, - ringWith * 1, size.width + ringWith * 2, size.height + ringWith * 2),
            arcStart * math.pi * 2 - math.pi / 2, math.min(arcEnd, 1.0) * math.pi * 2, false, loadingArcPaint);
  
        // counter arc total
        canvas.drawArc(
            Rect.fromLTWH(- ringWith * 2, - ringWith * 2, size.width + ringWith * 4, size.height + ringWith * 4),
            0 - math.pi / 2, math.min(arcCounter[0], 1.0) * math.pi * 2, false, loadingArcPaint);
  
        // blocked counter - the overlap
        canvas.drawArc(
            Rect.fromLTWH(- ringWith * 1, - ringWith * 1, size.width + ringWith * 2, size.height + ringWith * 2),
            0 - math.pi / 2, math.max(0, arcEnd - 1.0) * math.pi * 2, false, loadingArcPaint);
  
        // counter arc total - the overlap
        canvas.drawArc(
            Rect.fromLTWH(- ringWith * 2, - ringWith * 2, size.width + ringWith * 4, size.height + ringWith * 4),
            0 - math.pi / 2, math.max(0, arcCounter[0] - 1.0) * math.pi * 2, false, loadingArcPaint);
  
        // counter arc 10k-100k unused
        // canvas.drawArc(
  