docs: function(r) {
      r = Object.assign(r, {
          C: 90
      });
  
      r.A = r.A || 90 - r.B;
      r.B = r.B || 90 - r.A;
  
      var arad = toRadians(r.A);
  
      // sinA = a/c
      // a = c * sinA
      // tanA = a/b
      // a = b * tanA
      r.a = r.a || (r.c ? r.c * Math.sin(arad) : r.b * Math.tan(arad));
  
      // sinA = a/c
      r.c = r.c || r.a / Math.sin(arad);
  
      // tanA = a/b
      r.b = r.b || r.a / Math.tan(arad);
  
      return r;
  }