anchor.diff:      IF ( PRESENT(mode) ) ppser_mode = mode
       IF ( PRESENT(prefix_ref) ) THEN
         IF ( PRESENT(mpi_rank) ) THEN
  -        IF ( PRESENT(opt_archive) ) THEN
  -          CALL fs_create_serializer(directory, TRIM(prefix_ref)//TRIM(suffix), 'r', ppser_serializer_ref, opt_archive)
  +        IF ( PRESENT(archive) ) THEN
  +          CALL fs_create_serializer(directory, TRIM(prefix_ref)//TRIM(suffix), 'r', ppser_serializer_ref, archive)
           ELSE
             CALL fs_create_serializer(directory, TRIM(prefix_ref)//TRIM(suffix), 'r', ppser_serializer_ref)
           END IF
         ELSE
  -        IF ( PRESENT(opt_archive) ) THEN
  -          CALL fs_create_serializer(directory, TRIM(prefix_ref), 'r', ppser_serializer_ref, opt_archive)
  +        IF ( PRESENT(archive) ) THEN
  +          CALL fs_create_serializer(directory, TRIM(prefix_ref), 'r', ppser_serializer_ref, archive)
           ELSE
             CALL fs_create_serializer(directory, TRIM(prefix_ref), 'r', ppser_serializer_ref)
           END IF
  
positive.code:   IF ( .NOT. ppser_initialized ) THEN
      IF ( PRESENT(mpi_rank) ) THEN
        WRITE(suffix, '(A5,I0)') "_rank", mpi_rank
        IF ( PRESENT(opt_archive) ) THEN
          CALL fs_create_serializer(directory, TRIM(prefix)//TRIM(suffix), 'w', ppser_serializer, opt_archive)
        ELSE
          CALL fs_create_serializer(directory, TRIM(prefix)//TRIM(suffix), 'w', ppser_serializer)
        END IF
      ELSE
        IF ( PRESENT(opt_archive) ) THEN
          CALL fs_create_serializer(directory, TRIM(prefix), 'w', ppser_serializer, opt_archive)
        ELSE
          CALL fs_create_serializer(directory, TRIM(prefix), 'w', ppser_serializer)
        END IF
  
negative.code: 
  !============================================================================
  
  SUBROUTINE ppser_initialize(directory, prefix, mode, prefix_ref, mpi_rank, rprecision, rperturb, realtype, archive)
    CHARACTER(LEN=*), INTENT(IN)           :: directory, prefix
    INTEGER, OPTIONAL, INTENT(IN)          :: mode
    CHARACTER(LEN=*), OPTIONAL, INTENT(IN) :: prefix_ref
    INTEGER, OPTIONAL, INTENT(IN)          :: mpi_rank
    REAL(KIND=8), OPTIONAL, INTENT(IN)     :: rprecision, rperturb
    INTEGER, OPTIONAL, INTENT(IN)          :: realtype
    CHARACTER(LEN=*), INTENT(IN), OPTIONAL :: archive
  
    CHARACTER(LEN=1), DIMENSION(128)       :: buffer
    CHARACTER(LEN=15)                      :: suffix
  