I created a pdf for https://github.com/mozilla/pdf.js/pull/14023:
[same_fields(1).pdf](https://github.com/mozilla/pdf.js/files/7168340/same_fields.1.pdf)
The 3 checkboxes have the same name (`Check Box2`) and have the same values (`Off` and `Yes`).
In pdf.js, these checkboxes behave like radio buttons in the same group (which is wrong) because of:
https://github.com/mozilla/pdf.js/commit/1fcffe80349a98378262c8a16f7b50ff34c3fe82
Since they've the same values they must be synced: if one is checked (resp. unchecked) then all others are checked (resp. unchecked).
const subtype = parameters.data.annotationType;
    switch (subtype) {
      case AnnotationType.LINK:
        return new LinkAnnotationElement(parameters);
      case AnnotationType.TEXT:
        return new TextAnnotationElement(parameters);
      case AnnotationType.WIDGET:
        const fieldType = parameters.data.fieldType;
        switch (fieldType) {
          case "Tx":
            return new TextWidgetAnnotationElement(parameters);
          case "Btn":
            if (parameters.data.radioButton) {
              return new RadioButtonWidgetAnnotationElement(parameters);
            } else if (parameters.data.checkBox) {
              return new CheckboxWidgetAnnotationElement(parameters);
            }
            return new PushButtonWidgetAnnotationElement(parameters);
          case "Ch":
            return new ChoiceWidgetAnnotationElement(parameters);
        }
        return new WidgetAnnotationElement(parameters);
      case AnnotationType.POPUP:
        return new PopupAnnotationElement(parameters);
      case AnnotationType.FREETEXT:
        return new FreeTextAnnotationElement(parameters);
      case AnnotationType.LINE:
        return new LineAnnotationElement(parameters);