/*
** Automatically generated from `io.m'
** by the Mercury compiler,
** version 14.01.1, configured for x86_64--netbsd.
** Do not edit.
**
** The autoconfigured grade settings governing
** the generation of this C file were
**
** TAG_BITS=3
** UNBOXED_FLOAT=yes
** PREGENERATED_DIST=no
** HIGHLEVEL_CODE=yes
**
** END_OF_C_GRADE_INFO
*/


/* :- module io. */
/* :- interface. */

#ifndef MR_HEADER_GUARD_io
#define MR_HEADER_GUARD_io

#ifdef __cplusplus
extern "C" {
#endif

#include "mercury.h"


#ifndef IO_DECL_GUARD
#define IO_DECL_GUARD
#line 1707 "io.m"

    extern MR_Word      ML_io_stream_db;
    extern MR_Word      ML_io_user_globals;

    extern int          ML_next_stream_id;
    #if 0
      extern MR_Word    ML_io_ops_table;
    #endif

    #ifdef MR_THREAD_SAFE
        extern MercuryLock ML_io_stream_db_lock;
        extern MercuryLock ML_io_user_globals_lock;
        extern MercuryLock ML_io_next_stream_id_lock;
    #endif

#line 2758 "io.m"

#ifdef MR_HAVE_UNISTD_H
    #include <unistd.h>
#endif
#ifdef MR_HAVE_SYS_STAT_H
    #include <sys/stat.h>
#endif
#include "mercury_types.h"            /* for MR_Integer */
#include "mercury_library_types.h"    /* for MercuryFilePtr */

#line 3822 "io.m"

#ifdef MR_HAVE_DEV_T
  typedef   dev_t       ML_dev_t;
#else
  typedef   MR_Integer  ML_dev_t;
#endif

#ifdef MR_HAVE_INO_T
  typedef   ino_t       ML_ino_t;
#else
  typedef   MR_Integer  ML_ino_t;
#endif

typedef struct {
    ML_dev_t device;
    ML_ino_t inode;
} ML_File_Id;

#line 5653 "io.m"


#include "mercury_init.h"
#include "mercury_wrapper.h"
#include "mercury_type_info.h"
#include "mercury_library_types.h"
#include "mercury_file.h"
#include "mercury_heap.h"
#include "mercury_misc.h"
#include "mercury_runtime_util.h"

#include <stdio.h>
#include <stdlib.h>
#include <stdarg.h>
#include <string.h>
#include <errno.h>
#include <limits.h>

#ifdef MR_HAVE_SYS_WAIT_H
  #include <sys/wait.h>     /* for WIFEXITED, WEXITSTATUS, etc. */
#endif

#ifdef MR_WIN32
  #include "mercury_windows.h"
#endif

#if defined(MR_MSVC)
    typedef SSIZE_T ML_ssize_t;
#else
    typedef ssize_t ML_ssize_t;
#endif

extern MercuryFile mercury_stdin;
extern MercuryFile mercury_stdout;
extern MercuryFile mercury_stderr;
extern MercuryFile mercury_stdin_binary;
extern MercuryFile mercury_stdout_binary;
extern MR_Unsigned mercury_current_text_input_index;
extern MR_Unsigned mercury_current_text_output_index;
extern MR_Unsigned mercury_current_binary_input_index;
extern MR_Unsigned mercury_current_binary_output_index;

#define MR_initial_io_state()       0   /* some random number */
#define MR_final_io_state(r)        ((void)0)

void            mercury_init_io(void);
MercuryFilePtr  mercury_current_text_input(void);
MercuryFilePtr  mercury_current_text_output(void);
MercuryFilePtr  mercury_current_binary_input(void);
MercuryFilePtr  mercury_current_binary_output(void);
int             mercury_next_stream_id(void);
MercuryFilePtr  mercury_open(const char *filename, const char *openmode,
                    MR_AllocSiteInfoPtr alloc_id);
void            mercury_io_error(MercuryFilePtr mf, const char *format, ...);
void            mercury_output_error(MercuryFilePtr mf, int errnum);
void            mercury_print_string(MercuryFilePtr mf, const char *s);
int             mercury_get_byte(MercuryFilePtr mf);
void            mercury_close(MercuryFilePtr mf);
int             ML_fprintf(MercuryFilePtr mf, const char *format, ...);

#ifdef MR_WIN32
    wchar_t     *ML_utf8_to_wide(const char *s);
    char        *ML_wide_to_utf8(const wchar_t *ws,
                    MR_AllocSiteInfoPtr alloc_id);
#endif

#line 9623 "io.m"


/*
** A note regarding the declaration of the environ global variable
** that follows:
**
** The man page (on Linux) says that it should be declared by the user
** program.
**
** On MinGW, environ is a macro (defined in stdlib.h) that expands to a
** function call that returns the user environment; no additional
** declaration is required.
**
** On Mac OS X shared libraries do not have direct access to environ.
** The man page for environ(7) says that we should look it up at
** runtime using _NSGetEnviron().
*/

#if defined(MR_HAVE_ENVIRON) && !defined(MR_MAC_OSX)
    #include <unistd.h>

    #if !defined(MR_MINGW)
        extern char **environ;
    #endif
#endif

#if defined(MR_MAC_OSX)
    #include <crt_externs.h>
#endif

#ifdef MR_HAVE_SPAWN_H
    #include <spawn.h>
#endif

#line 10066 "io.m"

#include <stdlib.h> /* for getenv() and putenv() */

#line 10244 "io.m"

#ifdef MR_HAVE_UNISTD_H
    #include <unistd.h>
#endif
    #include <sys/types.h>
    #include <sys/stat.h>
    #include <fcntl.h>

    #define ML_MAX_TEMPNAME_TRIES   (6 * 4)

    extern long ML_io_tempnam_counter;

#line 10491 "io.m"


#include <string.h>
#include <errno.h>

/*
** ML_maybe_make_err_msg(was_error, errnum, msg, alloc_id, error_msg):
** if `was_error' is true, then append `msg' and a message for errnum
** to give `error_msg'; otherwise, set `error_msg' to ".
**
** WARNING: this must only be called when the `hp' register is valid.
** That means it must only be called from procedures declared
** `[will_not_call_mercury, promise_pure]'.
**
** This is defined as a macro rather than a C function
** to avoid worrying about the `hp' register being
** invalidated by the function call.
*/

#define ML_maybe_make_err_msg(was_error, errnum, msg, alloc_id, error_msg) \
    do {                                                                   \
        char    errbuf[MR_STRERROR_BUF_SIZE];                              \
        const char *errno_msg;                                             \
        size_t  total_len;                                                 \
        MR_Word tmp;                                                       \
                                                                           \
        if (was_error) {                                                   \
            errno_msg = MR_strerror(errnum, errbuf, sizeof(errbuf));       \
            total_len = strlen(msg) + strlen(errno_msg);                   \
            MR_offset_incr_hp_atomic_msg(tmp, 0,                           \
                (total_len + sizeof(MR_Word)) / sizeof(MR_Word),           \
                (alloc_id), "string.string/0");                          \
            (error_msg) = (char *) tmp;                                    \
            strcpy((error_msg), msg);                                      \
            strcat((error_msg), errno_msg);                                \
        } else {                                                           \
            /*                                                             \
            ** We can't just return NULL here, because otherwise mdb       \
            ** will break when it tries to print the string.               \
            */                                                             \
            (error_msg) = MR_make_string_const("");                      \
        }                                                                  \
    } while(0)

/*
** ML_maybe_make_win32_err_msg(was_error, error, msg, alloc_id, error_msg):
** if `was_error' is true, then append `msg' and the string
** returned by the Win32 API function FormatMessage() for the
** last error to give `error_msg'; otherwise, set `error_msg' to ".
** Aborts if MR_WIN32 is not defined.
**
** WARNING: this must only be called when the `hp' register is valid.
** That means it must only be called from procedures declared
** `[will_not_call_mercury]'.
**
** This is defined as a macro rather than a C function
** to avoid worrying about the `hp' register being
** invalidated by the function call.
*/
#ifdef MR_WIN32

#define ML_maybe_make_win32_err_msg(was_error, error, msg, alloc_id,        \
        error_msg)                                                          \
    do {                                                                    \
        size_t total_len;                                                   \
        MR_Word tmp;                                                        \
                                                                            \
        if (was_error) {                                                    \
            LPVOID  err_buf;                                                \
            MR_bool free_err_buf = MR_TRUE;                                 \
            if (!FormatMessage(                                             \
                FORMAT_MESSAGE_ALLOCATE_BUFFER                              \
                | FORMAT_MESSAGE_FROM_SYSTEM                                \
                | FORMAT_MESSAGE_IGNORE_INSERTS,                            \
                NULL,                                                       \
                error,                                                      \
                MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),                  \
                (LPTSTR) &err_buf,                                          \
                0,                                                          \
                NULL))                                                      \
            {                                                               \
                free_err_buf = MR_FALSE;                                    \
                err_buf = (LPVOID) "could not retrieve error message";    \
            }                                                               \
            total_len = strlen(msg) + strlen((char *)err_buf);              \
            MR_incr_hp_atomic_msg(tmp,                                      \
                (total_len + sizeof(MR_Word)) / sizeof(MR_Word),            \
                (alloc_id), "string.string/0");                           \
            (error_msg) = (char *) tmp;                                     \
            strcpy((error_msg), msg);                                       \
            strcat((error_msg), (char *)err_buf);                           \
            if (free_err_buf) {                                             \
                LocalFree(err_buf);                                         \
            }                                                               \
        } else {                                                            \
            /*                                                              \
            ** We can't just return NULL here, because otherwise mdb        \
            ** will break when it tries to print the string.                \
            */                                                              \
            (error_msg) = MR_make_string_const("");                       \
        }                                                                   \
    } while(0)

#else /* !MR_WIN32 */

#define ML_maybe_make_win32_err_msg(was_error, error, msg, alloc_id, error_msg) \
    MR_fatal_error("ML_maybe_make_win32_err_msg called on non-Windows platform")

#endif /* !MR_WIN32 */


#endif




#line 317 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_access_type_0;

#line 320 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_binary_input_stream_0;

#line 323 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_binary_output_stream_0;

#line 326 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_buffer_0;

#line 329 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_chunk_inner_res_1;

#line 332 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_chunk_inner_res0_0;

#line 335 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_error_0;

#line 338 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_file_id_0;

#line 341 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_file_type_0;

#line 344 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_input_stream_0;

#line 347 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_io_0;

#line 350 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_maybe_partial_res_1;

#line 353 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_maybe_stream_info_0;

#line 356 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_output_stream_0;

#line 359 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_poly_type_0;

#line 362 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_posn_0;

#line 365 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_read_result_1;

#line 368 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_res_1;

#line 371 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_res_0;

#line 374 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_result_1;

#line 377 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_result_0;

#line 380 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_state_0;

#line 383 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_stream_0;

#line 386 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_stream_content_0;

#line 389 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_stream_db_0;

#line 392 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_stream_id_0;

#line 395 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_stream_info_0;

#line 398 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_stream_mode_0;

#line 401 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_stream_putback_0;

#line 404 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_stream_source_0;

#line 407 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_system_error_0;

#line 410 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_system_result_0;

#line 413 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_text_input_stream_0;

#line 416 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_text_output_stream_0;

#line 419 "io.mih.tmp"
extern const MR_TypeCtorInfo_Struct mercury__io__io__type_ctor_info_whence_0;

#line 422 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__writer__arity3__io__binary_output_stream__arity0__bitmap__slice__arity0__io__state__arity0__[6];

#line 425 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__writer__arity3__io__binary_output_stream__arity0__bitmap__bitmap__arity0__io__state__arity0__[6];

#line 428 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__writer__arity3__io__binary_output_stream__arity0__int__arity0__io__state__arity0__[6];

#line 431 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__writer__arity3__io__output_stream__arity0__univ__univ__arity0__io__state__arity0__[6];

#line 434 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__writer__arity3__io__output_stream__arity0__string__arity0__io__state__arity0__[6];

#line 437 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__writer__arity3__io__output_stream__arity0__int__arity0__io__state__arity0__[6];

#line 440 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__writer__arity3__io__output_stream__arity0__float__arity0__io__state__arity0__[6];

#line 443 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__writer__arity3__io__output_stream__arity0__character__arity0__io__state__arity0__[6];

#line 446 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__stream__arity2__io__binary_output_stream__arity0__io__state__arity0__[6];

#line 449 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__stream__arity2__io__binary_input_stream__arity0__io__state__arity0__[6];

#line 452 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__stream__arity2__io__output_stream__arity0__io__state__arity0__[6];

#line 455 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__stream__arity2__io__input_stream__arity0__io__state__arity0__[6];

#line 458 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__seekable__arity2__io__binary_output_stream__arity0__io__state__arity0__[6];

#line 461 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__seekable__arity2__io__binary_input_stream__arity0__io__state__arity0__[6];

#line 464 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__reader__arity4__io__binary_input_stream__arity0__int__arity0__io__state__arity0__io__error__arity0__[6];

#line 467 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__reader__arity4__io__input_stream__arity0__string__text_file__arity0__io__state__arity0__io__error__arity0__[6];

#line 470 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__reader__arity4__io__input_stream__arity0__string__line__arity0__io__state__arity0__io__error__arity0__[6];

#line 473 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__reader__arity4__io__input_stream__arity0__character__arity0__io__state__arity0__io__error__arity0__[6];

#line 476 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__putback__arity4__io__binary_input_stream__arity0__int__arity0__io__state__arity0__io__error__arity0__[6];

#line 479 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__putback__arity4__io__input_stream__arity0__character__arity0__io__state__arity0__io__error__arity0__[6];

#line 482 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__output__arity2__io__binary_output_stream__arity0__io__state__arity0__[6];

#line 485 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__output__arity2__io__output_stream__arity0__io__state__arity0__[6];

#line 488 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__line_oriented__arity2__io__output_stream__arity0__io__state__arity0__[7];

#line 491 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__line_oriented__arity2__io__input_stream__arity0__io__state__arity0__[7];

#line 494 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__input__arity2__io__binary_input_stream__arity0__io__state__arity0__[5];

#line 497 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__input__arity2__io__input_stream__arity0__io__state__arity0__[5];

#line 500 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__error__arity1__io__error__arity0__[6];

#line 503 "io.mih.tmp"
extern const MR_BaseTypeclassInfo base_typeclass_info_stream__bulk_reader__arity5__io__binary_input_stream__arity0__int__arity0__bitmap__bitmap__arity0__io__state__arity0__io__error__arity0__[6];

#line 11121 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__writer____io__output_stream__arity0__character__arity0__io__state__arity0______stream__put_4_4_p_0(
#line 11121 "io.m"
  MR_Word mercury__io__param_1,
#line 11121 "io.m"
  MR_Char mercury__io__param_2);

#line 11127 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__writer____io__output_stream__arity0__float__arity0__io__state__arity0______stream__put_4_4_p_0(
#line 11127 "io.m"
  MR_Word mercury__io__param_1,
#line 11127 "io.m"
  MR_Float mercury__io__param_2);

#line 11133 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__writer____io__output_stream__arity0__int__arity0__io__state__arity0______stream__put_4_4_p_0(
#line 11133 "io.m"
  MR_Word mercury__io__param_1,
#line 11133 "io.m"
  MR_Integer mercury__io__param_2);

#line 11139 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__writer____io__output_stream__arity0__string__arity0__io__state__arity0______stream__put_4_4_p_0(
#line 11139 "io.m"
  MR_Word mercury__io__param_1,
#line 11139 "io.m"
  MR_String mercury__io__param_2);

#line 11145 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__writer____io__output_stream__arity0__univ__univ__arity0__io__state__arity0______stream__put_4_4_p_0(
#line 11145 "io.m"
  MR_Word mercury__io__param_1,
#line 11145 "io.m"
  MR_Word mercury__io__param_2);

#line 11234 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__writer____io__binary_output_stream__arity0__int__arity0__io__state__arity0______stream__put_4_4_p_0(
#line 11234 "io.m"
  MR_Word mercury__io__param_1,
#line 11234 "io.m"
  MR_Integer mercury__io__param_2);

#line 11240 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__writer____io__binary_output_stream__arity0__bitmap__bitmap__arity0__io__state__arity0______stream__put_4_4_p_0(
#line 11240 "io.m"
  MR_Word mercury__io__param_1,
#line 11240 "io.m"
  MR_Box mercury__io__param_2);

#line 11246 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__writer____io__binary_output_stream__arity0__bitmap__slice__arity0__io__state__arity0______stream__put_4_4_p_0(
#line 11246 "io.m"
  MR_Word mercury__io__param_1,
#line 11246 "io.m"
  MR_Word mercury__io__param_2);

#line 11041 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__stream____io__input_stream__arity0__io__state__arity0______stream__name_4_4_p_0(
#line 11041 "io.m"
  MR_Word mercury__io__param_1,
#line 11041 "io.m"
  MR_String * mercury__io__param_2);

#line 11111 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__stream____io__output_stream__arity0__io__state__arity0______stream__name_4_4_p_0(
#line 11111 "io.m"
  MR_Word mercury__io__param_1,
#line 11111 "io.m"
  MR_String * mercury__io__param_2);

#line 11162 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__stream____io__binary_input_stream__arity0__io__state__arity0______stream__name_4_4_p_0(
#line 11162 "io.m"
  MR_Word mercury__io__param_1,
#line 11162 "io.m"
  MR_String * mercury__io__param_2);

#line 11222 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__stream____io__binary_output_stream__arity0__io__state__arity0______stream__name_4_4_p_0(
#line 11222 "io.m"
  MR_Word mercury__io__param_1,
#line 11222 "io.m"
  MR_String * mercury__io__param_2);

#line 11197 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__seekable____io__binary_input_stream__arity0__io__state__arity0______stream__seek_5_5_p_0(
#line 11197 "io.m"
  MR_Word mercury__io__param_1,
#line 11197 "io.m"
  MR_Word mercury__io__param_2,
#line 11197 "io.m"
  MR_Integer mercury__io__param_3);

#line 11255 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__seekable____io__binary_output_stream__arity0__io__state__arity0______stream__seek_5_5_p_0(
#line 11255 "io.m"
  MR_Word mercury__io__param_1,
#line 11255 "io.m"
  MR_Word mercury__io__param_2,
#line 11255 "io.m"
  MR_Integer mercury__io__param_3);

#line 11049 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__reader____io__input_stream__arity0__character__arity0__io__state__arity0__io__error__arity0______stream__get_4_4_p_0(
#line 11049 "io.m"
  MR_Word mercury__io__param_1,
#line 11049 "io.m"
  MR_Word * mercury__io__param_2);

#line 11058 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__reader____io__input_stream__arity0__string__line__arity0__io__state__arity0__io__error__arity0______stream__get_4_4_p_0(
#line 11058 "io.m"
  MR_Word mercury__io__param_1,
#line 11058 "io.m"
  MR_Word * mercury__io__param_2);

#line 11076 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__reader____io__input_stream__arity0__string__text_file__arity0__io__state__arity0__io__error__arity0______stream__get_4_4_p_0(
#line 11076 "io.m"
  MR_Word mercury__io__param_1,
#line 11076 "io.m"
  MR_Word * mercury__io__param_2);

#line 11171 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__reader____io__binary_input_stream__arity0__int__arity0__io__state__arity0__io__error__arity0______stream__get_4_4_p_0(
#line 11171 "io.m"
  MR_Word mercury__io__param_1,
#line 11171 "io.m"
  MR_Word * mercury__io__param_2);

#line 11090 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__putback____io__input_stream__arity0__character__arity0__io__state__arity0__io__error__arity0______stream__unget_4_4_p_0(
#line 11090 "io.m"
  MR_Word mercury__io__param_1,
#line 11090 "io.m"
  MR_Char mercury__io__param_2);

#line 11191 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__putback____io__binary_input_stream__arity0__int__arity0__io__state__arity0__io__error__arity0______stream__unget_4_4_p_0(
#line 11191 "io.m"
  MR_Word mercury__io__param_1,
#line 11191 "io.m"
  MR_Integer mercury__io__param_2);

#line 11115 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__output____io__output_stream__arity0__io__state__arity0______stream__flush_3_3_p_0(
#line 11115 "io.m"
  MR_Word mercury__io__param_1);

#line 11228 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__output____io__binary_output_stream__arity0__io__state__arity0______stream__flush_3_3_p_0(
#line 11228 "io.m"
  MR_Word mercury__io__param_1);

#line 11102 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__line_oriented____io__input_stream__arity0__io__state__arity0______stream__set_line_4_4_p_0(
#line 11102 "io.m"
  MR_Word mercury__io__param_1,
#line 11102 "io.m"
  MR_Integer mercury__io__param_2);

#line 11101 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__line_oriented____io__input_stream__arity0__io__state__arity0______stream__get_line_4_4_p_0(
#line 11101 "io.m"
  MR_Word mercury__io__param_1,
#line 11101 "io.m"
  MR_Integer * mercury__io__param_2);

#line 11151 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__line_oriented____io__output_stream__arity0__io__state__arity0______stream__set_line_4_4_p_0(
#line 11151 "io.m"
  MR_Word mercury__io__param_1,
#line 11151 "io.m"
  MR_Integer mercury__io__param_2);

#line 11150 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__line_oriented____io__output_stream__arity0__io__state__arity0______stream__get_line_4_4_p_0(
#line 11150 "io.m"
  MR_Word mercury__io__param_1,
#line 11150 "io.m"
  MR_Integer * mercury__io__param_2);

#line 11032 "io.m"
MR_String MR_CALL 
mercury__io__ClassMethod_for_stream__error____io__error__arity0______stream__error_message_1_1_f_0(
#line 11032 "io.m"
  MR_Word mercury__io__param_1);

#line 11181 "io.m"
void MR_CALL 
mercury__io__ClassMethod_for_stream__bulk_reader____io__binary_input_stream__arity0__int__arity0__bitmap__bitmap__arity0__io__state__arity0__io__error__arity0______stream__bulk_get_9_9_p_0(
#line 11181 "io.m"
  MR_Word mercury__io__param_1,
#line 11181 "io.m"
  MR_Integer mercury__io__param_2,
#line 11181 "io.m"
  MR_Integer mercury__io__param_3,
#line 11181 "io.m"
  MR_Box mercury__io__param_4,
#line 11181 "io.m"
  MR_Box * mercury__io__param_5,
#line 11181 "io.m"
  MR_Integer * mercury__io__param_6,
#line 11181 "io.m"
  MR_Word * mercury__io__param_7);

#line 126 "io.m"
void MR_CALL 
mercury__io____Compare____whence_0_0(
#line 126 "io.m"
  MR_Word * mercury__io__param_1,
#line 126 "io.m"
  MR_Word mercury__io__param_2,
#line 126 "io.m"
  MR_Word mercury__io__param_3);

#line 126 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____whence_0_0(
#line 126 "io.m"
  MR_Word mercury__io__param_1,
#line 126 "io.m"
  MR_Word mercury__io__param_2);

#line 67 "io.m"
void MR_CALL 
mercury__io____Compare____text_output_stream_0_0(
#line 67 "io.m"
  MR_Word * mercury__io__param_1,
#line 67 "io.m"
  MR_Word mercury__io__param_2,
#line 67 "io.m"
  MR_Word mercury__io__param_3);

#line 67 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____text_output_stream_0_0(
#line 67 "io.m"
  MR_Word mercury__io__param_1,
#line 67 "io.m"
  MR_Word mercury__io__param_2);

#line 66 "io.m"
void MR_CALL 
mercury__io____Compare____text_input_stream_0_0(
#line 66 "io.m"
  MR_Word * mercury__io__param_1,
#line 66 "io.m"
  MR_Word mercury__io__param_2,
#line 66 "io.m"
  MR_Word mercury__io__param_3);

#line 66 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____text_input_stream_0_0(
#line 66 "io.m"
  MR_Word mercury__io__param_1,
#line 66 "io.m"
  MR_Word mercury__io__param_2);

#line 1425 "io.m"
void MR_CALL 
mercury__io____Compare____system_result_0_0(
#line 1425 "io.m"
  MR_Word * mercury__io__param_1,
#line 1425 "io.m"
  MR_Word mercury__io__param_2,
#line 1425 "io.m"
  MR_Word mercury__io__param_3);

#line 1425 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____system_result_0_0(
#line 1425 "io.m"
  MR_Word mercury__io__param_1,
#line 1425 "io.m"
  MR_Word mercury__io__param_2);

#line 1515 "io.m"
void MR_CALL 
mercury__io____Compare____system_error_0_0(
#line 1515 "io.m"
  MR_Word * mercury__io__param_1,
#line 1515 "io.m"
  MR_Box mercury__io__param_2,
#line 1515 "io.m"
  MR_Box mercury__io__param_3);

#line 1515 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____system_error_0_0(
#line 1515 "io.m"
  MR_Box mercury__io__param_1,
#line 1515 "io.m"
  MR_Box mercury__io__param_2);

#line 1619 "io.m"
void MR_CALL 
mercury__io____Compare____stream_source_0_0(
#line 1619 "io.m"
  MR_Word * mercury__io__param_1,
#line 1619 "io.m"
  MR_Word mercury__io__param_2,
#line 1619 "io.m"
  MR_Word mercury__io__param_3);

#line 1619 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____stream_source_0_0(
#line 1619 "io.m"
  MR_Word mercury__io__param_1,
#line 1619 "io.m"
  MR_Word mercury__io__param_2);

#line 1780 "io.m"
void MR_CALL 
mercury__io____Compare____stream_putback_0_0(
#line 1780 "io.m"
  MR_Word * mercury__io__param_1,
#line 1780 "io.m"
  MR_Word mercury__io__param_2,
#line 1780 "io.m"
  MR_Word mercury__io__param_3);

#line 1780 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____stream_putback_0_0(
#line 1780 "io.m"
  MR_Word mercury__io__param_1,
#line 1780 "io.m"
  MR_Word mercury__io__param_2);

#line 1609 "io.m"
void MR_CALL 
mercury__io____Compare____stream_mode_0_0(
#line 1609 "io.m"
  MR_Word * mercury__io__param_1,
#line 1609 "io.m"
  MR_Word mercury__io__param_2,
#line 1609 "io.m"
  MR_Word mercury__io__param_3);

#line 1609 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____stream_mode_0_0(
#line 1609 "io.m"
  MR_Word mercury__io__param_1,
#line 1609 "io.m"
  MR_Word mercury__io__param_2);

#line 1592 "io.m"
void MR_CALL 
mercury__io____Compare____stream_info_0_0(
#line 1592 "io.m"
  MR_Word * mercury__io__param_1,
#line 1592 "io.m"
  MR_Word mercury__io__param_2,
#line 1592 "io.m"
  MR_Word mercury__io__param_3);

#line 1592 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____stream_info_0_0(
#line 1592 "io.m"
  MR_Word mercury__io__param_1,
#line 1592 "io.m"
  MR_Word mercury__io__param_2);

#line 1800 "io.m"
void MR_CALL 
mercury__io____Compare____stream_id_0_0(
#line 1800 "io.m"
  MR_Word * mercury__io__param_1,
#line 1800 "io.m"
  MR_Integer mercury__io__param_2,
#line 1800 "io.m"
  MR_Integer mercury__io__param_3);

#line 1800 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____stream_id_0_0(
#line 1800 "io.m"
  MR_Integer mercury__io__param_1,
#line 1800 "io.m"
  MR_Integer mercury__io__param_2);

#line 1590 "io.m"
void MR_CALL 
mercury__io____Compare____stream_db_0_0(
#line 1590 "io.m"
  MR_Word * mercury__io__param_1,
#line 1590 "io.m"
  MR_Word mercury__io__param_2,
#line 1590 "io.m"
  MR_Word mercury__io__param_3);

#line 1590 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____stream_db_0_0(
#line 1590 "io.m"
  MR_Word mercury__io__param_1,
#line 1590 "io.m"
  MR_Word mercury__io__param_2);

#line 1614 "io.m"
void MR_CALL 
mercury__io____Compare____stream_content_0_0(
#line 1614 "io.m"
  MR_Word * mercury__io__param_1,
#line 1614 "io.m"
  MR_Word mercury__io__param_2,
#line 1614 "io.m"
  MR_Word mercury__io__param_3);

#line 1614 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____stream_content_0_0(
#line 1614 "io.m"
  MR_Word mercury__io__param_1,
#line 1614 "io.m"
  MR_Word mercury__io__param_2);

#line 1796 "io.m"
void MR_CALL 
mercury__io____Compare____stream_0_0(
#line 1796 "io.m"
  MR_Word * mercury__io__param_1,
#line 1796 "io.m"
  MR_Box mercury__io__param_2,
#line 1796 "io.m"
  MR_Box mercury__io__param_3);

#line 1796 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____stream_0_0(
#line 1796 "io.m"
  MR_Box mercury__io__param_1,
#line 1796 "io.m"
  MR_Box mercury__io__param_2);

#line 1705 "io.m"
void MR_CALL 
mercury__io____Compare____state_0_0(
#line 1705 "io.m"
  MR_Word * mercury__io__param_1);

#line 1705 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____state_0_0(void);

#line 104 "io.m"
void MR_CALL 
mercury__io____Compare____result_1_0(
#line 104 "io.m"
  MR_Word mercury__io__param_1,
#line 104 "io.m"
  MR_Word * mercury__io__param_2,
#line 104 "io.m"
  MR_Word mercury__io__param_3,
#line 104 "io.m"
  MR_Word mercury__io__param_4);

#line 104 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____result_1_0(
#line 104 "io.m"
  MR_Word mercury__io__param_1,
#line 104 "io.m"
  MR_Word mercury__io__param_2,
#line 104 "io.m"
  MR_Word mercury__io__param_3);

#line 99 "io.m"
void MR_CALL 
mercury__io____Compare____result_0_0(
#line 99 "io.m"
  MR_Word * mercury__io__param_1,
#line 99 "io.m"
  MR_Word mercury__io__param_2,
#line 99 "io.m"
  MR_Word mercury__io__param_3);

#line 99 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____result_0_0(
#line 99 "io.m"
  MR_Word mercury__io__param_1,
#line 99 "io.m"
  MR_Word mercury__io__param_2);

#line 84 "io.m"
void MR_CALL 
mercury__io____Compare____res_1_0(
#line 84 "io.m"
  MR_Word mercury__io__param_1,
#line 84 "io.m"
  MR_Word * mercury__io__param_2,
#line 84 "io.m"
  MR_Word mercury__io__param_3,
#line 84 "io.m"
  MR_Word mercury__io__param_4);

#line 84 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____res_1_0(
#line 84 "io.m"
  MR_Word mercury__io__param_1,
#line 84 "io.m"
  MR_Word mercury__io__param_2,
#line 84 "io.m"
  MR_Word mercury__io__param_3);

#line 80 "io.m"
void MR_CALL 
mercury__io____Compare____res_0_0(
#line 80 "io.m"
  MR_Word * mercury__io__param_1,
#line 80 "io.m"
  MR_Word mercury__io__param_2,
#line 80 "io.m"
  MR_Word mercury__io__param_3);

#line 80 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____res_0_0(
#line 80 "io.m"
  MR_Word mercury__io__param_1,
#line 80 "io.m"
  MR_Word mercury__io__param_2);

#line 109 "io.m"
void MR_CALL 
mercury__io____Compare____read_result_1_0(
#line 109 "io.m"
  MR_Word mercury__io__param_1,
#line 109 "io.m"
  MR_Word * mercury__io__param_2,
#line 109 "io.m"
  MR_Word mercury__io__param_3,
#line 109 "io.m"
  MR_Word mercury__io__param_4);

#line 109 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____read_result_1_0(
#line 109 "io.m"
  MR_Word mercury__io__param_1,
#line 109 "io.m"
  MR_Word mercury__io__param_2,
#line 109 "io.m"
  MR_Word mercury__io__param_3);

#line 347 "io.m"
void MR_CALL 
mercury__io____Compare____posn_0_0(
#line 347 "io.m"
  MR_Word * mercury__io__param_1,
#line 347 "io.m"
  MR_Word mercury__io__param_2,
#line 347 "io.m"
  MR_Word mercury__io__param_3);

#line 347 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____posn_0_0(
#line 347 "io.m"
  MR_Word mercury__io__param_1,
#line 347 "io.m"
  MR_Word mercury__io__param_2);

#line 119 "io.m"
void MR_CALL 
mercury__io____Compare____poly_type_0_0(
#line 119 "io.m"
  MR_Word * mercury__io__param_1,
#line 119 "io.m"
  MR_Word mercury__io__param_2,
#line 119 "io.m"
  MR_Word mercury__io__param_3);

#line 119 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____poly_type_0_0(
#line 119 "io.m"
  MR_Word mercury__io__param_1,
#line 119 "io.m"
  MR_Word mercury__io__param_2);

#line 1783 "io.m"
void MR_CALL 
mercury__io____Compare____output_stream_0_0(
#line 1783 "io.m"
  MR_Word * mercury__io__param_1,
#line 1783 "io.m"
  MR_Word mercury__io__param_2,
#line 1783 "io.m"
  MR_Word mercury__io__param_3);

#line 1783 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____output_stream_0_0(
#line 1783 "io.m"
  MR_Word mercury__io__param_1,
#line 1783 "io.m"
  MR_Word mercury__io__param_2);

#line 1600 "io.m"
void MR_CALL 
mercury__io____Compare____maybe_stream_info_0_0(
#line 1600 "io.m"
  MR_Word * mercury__io__param_1,
#line 1600 "io.m"
  MR_Word mercury__io__param_2,
#line 1600 "io.m"
  MR_Word mercury__io__param_3);

#line 1600 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____maybe_stream_info_0_0(
#line 1600 "io.m"
  MR_Word mercury__io__param_1,
#line 1600 "io.m"
  MR_Word mercury__io__param_2);

#line 91 "io.m"
void MR_CALL 
mercury__io____Compare____maybe_partial_res_1_0(
#line 91 "io.m"
  MR_Word mercury__io__param_1,
#line 91 "io.m"
  MR_Word * mercury__io__param_2,
#line 91 "io.m"
  MR_Word mercury__io__param_3,
#line 91 "io.m"
  MR_Word mercury__io__param_4);

#line 91 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____maybe_partial_res_1_0(
#line 91 "io.m"
  MR_Word mercury__io__param_1,
#line 91 "io.m"
  MR_Word mercury__io__param_2,
#line 91 "io.m"
  MR_Word mercury__io__param_3);

#line 57 "io.m"
void MR_CALL 
mercury__io____Compare____io_0_0(
#line 57 "io.m"
  MR_Word * mercury__io__param_1);

#line 57 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____io_0_0(void);

#line 1782 "io.m"
void MR_CALL 
mercury__io____Compare____input_stream_0_0(
#line 1782 "io.m"
  MR_Word * mercury__io__param_1,
#line 1782 "io.m"
  MR_Word mercury__io__param_2,
#line 1782 "io.m"
  MR_Word mercury__io__param_3);

#line 1782 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____input_stream_0_0(
#line 1782 "io.m"
  MR_Word mercury__io__param_1,
#line 1782 "io.m"
  MR_Word mercury__io__param_2);

#line 1355 "io.m"
void MR_CALL 
mercury__io____Compare____file_type_0_0(
#line 1355 "io.m"
  MR_Word * mercury__io__param_1,
#line 1355 "io.m"
  MR_Word mercury__io__param_2,
#line 1355 "io.m"
  MR_Word mercury__io__param_3);

#line 1355 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____file_type_0_0(
#line 1355 "io.m"
  MR_Word mercury__io__param_1,
#line 1355 "io.m"
  MR_Word mercury__io__param_2);

#line 3819 "io.m"
void MR_CALL 
mercury__io____Compare____file_id_0_0(
#line 3819 "io.m"
  MR_Word * mercury__io__param_1,
#line 3819 "io.m"
  MR_Box mercury__io__param_2,
#line 3819 "io.m"
  MR_Box mercury__io__param_3);

#line 3819 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____file_id_0_0(
#line 3819 "io.m"
  MR_Box mercury__io__param_1,
#line 3819 "io.m"
  MR_Box mercury__io__param_2);

#line 5600 "io.m"
void MR_CALL 
mercury__io____Compare____error_0_0(
#line 5600 "io.m"
  MR_Word * mercury__io__param_1,
#line 5600 "io.m"
  MR_Word mercury__io__param_2,
#line 5600 "io.m"
  MR_Word mercury__io__param_3);

#line 5600 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____error_0_0(
#line 5600 "io.m"
  MR_Word mercury__io__param_1,
#line 5600 "io.m"
  MR_Word mercury__io__param_2);

#line 4485 "io.m"
void MR_CALL 
mercury__io____Compare____chunk_inner_res0_0_0(
#line 4485 "io.m"
  MR_Word * mercury__io__param_1,
#line 4485 "io.m"
  MR_Word mercury__io__param_2,
#line 4485 "io.m"
  MR_Word mercury__io__param_3);

#line 4485 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____chunk_inner_res0_0_0(
#line 4485 "io.m"
  MR_Word mercury__io__param_1,
#line 4485 "io.m"
  MR_Word mercury__io__param_2);

#line 4490 "io.m"
void MR_CALL 
mercury__io____Compare____chunk_inner_res_1_0(
#line 4490 "io.m"
  MR_Word mercury__io__param_1,
#line 4490 "io.m"
  MR_Word * mercury__io__param_2,
#line 4490 "io.m"
  MR_Word mercury__io__param_3,
#line 4490 "io.m"
  MR_Word mercury__io__param_4);

#line 4490 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____chunk_inner_res_1_0(
#line 4490 "io.m"
  MR_Word mercury__io__param_1,
#line 4490 "io.m"
  MR_Word mercury__io__param_2,
#line 4490 "io.m"
  MR_Word mercury__io__param_3);

#line 4028 "io.m"
void MR_CALL 
mercury__io____Compare____buffer_0_0(
#line 4028 "io.m"
  MR_Word * mercury__io__param_1,
#line 4028 "io.m"
  MR_Box mercury__io__param_2,
#line 4028 "io.m"
  MR_Box mercury__io__param_3);

#line 4028 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____buffer_0_0(
#line 4028 "io.m"
  MR_Box mercury__io__param_1,
#line 4028 "io.m"
  MR_Box mercury__io__param_2);

#line 1786 "io.m"
void MR_CALL 
mercury__io____Compare____binary_output_stream_0_0(
#line 1786 "io.m"
  MR_Word * mercury__io__param_1,
#line 1786 "io.m"
  MR_Word mercury__io__param_2,
#line 1786 "io.m"
  MR_Word mercury__io__param_3);

#line 1786 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____binary_output_stream_0_0(
#line 1786 "io.m"
  MR_Word mercury__io__param_1,
#line 1786 "io.m"
  MR_Word mercury__io__param_2);

#line 1785 "io.m"
void MR_CALL 
mercury__io____Compare____binary_input_stream_0_0(
#line 1785 "io.m"
  MR_Word * mercury__io__param_1,
#line 1785 "io.m"
  MR_Word mercury__io__param_2,
#line 1785 "io.m"
  MR_Word mercury__io__param_3);

#line 1785 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____binary_input_stream_0_0(
#line 1785 "io.m"
  MR_Word mercury__io__param_1,
#line 1785 "io.m"
  MR_Word mercury__io__param_2);

#line 1338 "io.m"
void MR_CALL 
mercury__io____Compare____access_type_0_0(
#line 1338 "io.m"
  MR_Word * mercury__io__param_1,
#line 1338 "io.m"
  MR_Word mercury__io__param_2,
#line 1338 "io.m"
  MR_Word mercury__io__param_3);

#line 1338 "io.m"
MR_bool MR_CALL 
mercury__io____Unify____access_type_0_0(
#line 1338 "io.m"
  MR_Word mercury__io__param_1,
#line 1338 "io.m"
  MR_Word mercury__io__param_2);

#line 10753 "io.m"
void MR_CALL 
mercury__io__rename_file_2_6_p_0(
#line 10753 "io.m"
  MR_String mercury__io__param_1,
#line 10753 "io.m"
  MR_String mercury__io__param_2,
#line 10753 "io.m"
  MR_Integer * mercury__io__param_3,
#line 10753 "io.m"
  MR_String * mercury__io__param_4);

#line 10611 "io.m"
void MR_CALL 
mercury__io__remove_file_2_5_p_0(
#line 10611 "io.m"
  MR_String mercury__io__param_1,
#line 10611 "io.m"
  MR_Integer * mercury__io__param_2,
#line 10611 "io.m"
  MR_String * mercury__io__param_3);

#line 10236 "io.m"
void MR_CALL 
mercury__io__do_make_temp_8_p_0(
#line 10236 "io.m"
  MR_String mercury__io__param_1,
#line 10236 "io.m"
  MR_String mercury__io__param_2,
#line 10236 "io.m"
  MR_String mercury__io__param_3,
#line 10236 "io.m"
  MR_String * mercury__io__param_4,
#line 10236 "io.m"
  MR_Integer * mercury__io__param_5,
#line 10236 "io.m"
  MR_String * mercury__io__param_6);

#line 9536 "io.m"
void MR_CALL 
mercury__io__close_stream_3_p_0(
#line 9536 "io.m"
  MR_Box mercury__io__param_1);

#line 8819 "io.m"
void MR_CALL 
mercury__io__set_binary_output_stream_2_4_p_0(
#line 8819 "io.m"
  MR_Box mercury__io__param_1,
#line 8819 "io.m"
  MR_Box * mercury__io__param_2);

#line 8801 "io.m"
void MR_CALL 
mercury__io__set_binary_input_stream_2_4_p_0(
#line 8801 "io.m"
  MR_Box mercury__io__param_1,
#line 8801 "io.m"
  MR_Box * mercury__io__param_2);

#line 8783 "io.m"
void MR_CALL 
mercury__io__set_output_stream_2_4_p_0(
#line 8783 "io.m"
  MR_Box mercury__io__param_1,
#line 8783 "io.m"
  MR_Box * mercury__io__param_2);

#line 8766 "io.m"
void MR_CALL 
mercury__io__set_input_stream_2_4_p_0(
#line 8766 "io.m"
  MR_Box mercury__io__param_1,
#line 8766 "io.m"
  MR_Box * mercury__io__param_2);

#line 8753 "io.m"
void MR_CALL 
mercury__io__set_output_line_number_2_4_p_0(
#line 8753 "io.m"
  MR_Box mercury__io__param_1,
#line 8753 "io.m"
  MR_Integer mercury__io__param_2);

#line 8731 "io.m"
void MR_CALL 
mercury__io__get_output_line_number_2_4_p_0(
#line 8731 "io.m"
  MR_Box mercury__io__param_1,
#line 8731 "io.m"
  MR_Integer * mercury__io__param_2);

#line 8709 "io.m"
void MR_CALL 
mercury__io__set_line_number_2_4_p_0(
#line 8709 "io.m"
  MR_Box mercury__io__param_1,
#line 8709 "io.m"
  MR_Integer mercury__io__param_2);

#line 8689 "io.m"
void MR_CALL 
mercury__io__get_line_number_2_4_p_0(
#line 8689 "io.m"
  MR_Box mercury__io__param_1,
#line 8689 "io.m"
  MR_Integer * mercury__io__param_2);

#line 8668 "io.m"
void MR_CALL 
mercury__io__binary_output_stream_2_3_p_0(
#line 8668 "io.m"
  MR_Box * mercury__io__param_1);

#line 8655 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_2_3_p_0(
#line 8655 "io.m"
  MR_Box * mercury__io__param_1);

#line 8642 "io.m"
void MR_CALL 
mercury__io__output_stream_2_3_p_0(
#line 8642 "io.m"
  MR_Box * mercury__io__param_1);

#line 8629 "io.m"
void MR_CALL 
mercury__io__input_stream_2_3_p_0(
#line 8629 "io.m"
  MR_Box * mercury__io__param_1);

#line 8616 "io.m"
void MR_CALL 
mercury__io__stdout_binary_stream_2_3_p_0(
#line 8616 "io.m"
  MR_Box * mercury__io__param_1);

#line 8603 "io.m"
void MR_CALL 
mercury__io__stdin_binary_stream_2_3_p_0(
#line 8603 "io.m"
  MR_Box * mercury__io__param_1);

#line 8590 "io.m"
void MR_CALL 
mercury__io__stderr_stream_2_3_p_0(
#line 8590 "io.m"
  MR_Box * mercury__io__param_1);

#line 8561 "io.m"
MR_Box MR_CALL 
mercury__io__stderr_stream_2_0_f_0(void);

#line 8549 "io.m"
void MR_CALL 
mercury__io__stdout_stream_2_3_p_0(
#line 8549 "io.m"
  MR_Box * mercury__io__param_1);

#line 8520 "io.m"
MR_Box MR_CALL 
mercury__io__stdout_stream_2_0_f_0(void);

#line 8508 "io.m"
void MR_CALL 
mercury__io__stdin_stream_2_3_p_0(
#line 8508 "io.m"
  MR_Box * mercury__io__param_1);

#line 8479 "io.m"
MR_Box MR_CALL 
mercury__io__stdin_stream_2_0_f_0(void);

#line 8237 "io.m"
void MR_CALL 
mercury__io__flush_binary_output_2_3_p_0(
#line 8237 "io.m"
  MR_Box mercury__io__param_1);

#line 8223 "io.m"
void MR_CALL 
mercury__io__flush_output_2_3_p_0(
#line 8223 "io.m"
  MR_Box mercury__io__param_1);

#line 8194 "io.m"
void MR_CALL 
mercury__io__do_write_bitmap_6_p_0(
#line 8194 "io.m"
  MR_Box mercury__io__param_1,
#line 8194 "io.m"
  MR_Box mercury__io__param_2,
#line 8194 "io.m"
  MR_Integer mercury__io__param_3,
#line 8194 "io.m"
  MR_Integer mercury__io__param_4);

#line 8162 "io.m"
void MR_CALL 
mercury__io__write_byte_2_4_p_0(
#line 8162 "io.m"
  MR_Box mercury__io__param_1,
#line 8162 "io.m"
  MR_Integer mercury__io__param_2);

#line 8146 "io.m"
void MR_CALL 
mercury__io__write_float_2_4_p_0(
#line 8146 "io.m"
  MR_Box mercury__io__param_1,
#line 8146 "io.m"
  MR_Float mercury__io__param_2);

#line 8132 "io.m"
void MR_CALL 
mercury__io__write_int_2_4_p_0(
#line 8132 "io.m"
  MR_Box mercury__io__param_1,
#line 8132 "io.m"
  MR_Integer mercury__io__param_2);

#line 8102 "io.m"
void MR_CALL 
mercury__io__write_char_2_4_p_0(
#line 8102 "io.m"
  MR_Box mercury__io__param_1,
#line 8102 "io.m"
  MR_Char mercury__io__param_2);

#line 8090 "io.m"
void MR_CALL 
mercury__io__write_string_2_4_p_0(
#line 8090 "io.m"
  MR_Box mercury__io__param_1,
#line 8090 "io.m"
  MR_String mercury__io__param_2);

#line 8065 "io.m"
void MR_CALL 
mercury__io__binary_stream_offset_2_4_p_0(
#line 8065 "io.m"
  MR_Box mercury__io__param_1,
#line 8065 "io.m"
  MR_Integer * mercury__io__param_2);

#line 8040 "io.m"
void MR_CALL 
mercury__io__seek_binary_2_5_p_0(
#line 8040 "io.m"
  MR_Box mercury__io__param_1,
#line 8040 "io.m"
  MR_Integer mercury__io__param_2,
#line 8040 "io.m"
  MR_Integer mercury__io__param_3);

#line 8026 "io.m"
void MR_CALL 
mercury__io__whence_to_int_2_p_0(
#line 8026 "io.m"
  MR_Word mercury__io__param_1,
#line 8026 "io.m"
  MR_Integer * mercury__io__param_2);

#line 7624 "io.m"
void MR_CALL 
mercury__io__putback_byte_2_4_p_0(
#line 7624 "io.m"
  MR_Box mercury__io__param_1,
#line 7624 "io.m"
  MR_Integer mercury__io__param_2);

#line 7594 "io.m"
void MR_CALL 
mercury__io__putback_char_2_4_p_0(
#line 7594 "io.m"
  MR_Box mercury__io__param_1,
#line 7594 "io.m"
  MR_Char mercury__io__param_2);

#line 7581 "io.m"
void MR_CALL 
mercury__io__read_byte_val_2_4_p_0(
#line 7581 "io.m"
  MR_Box mercury__io__param_1,
#line 7581 "io.m"
  MR_Integer * mercury__io__param_2);

#line 7527 "io.m"
void MR_CALL 
mercury__io__read_char_code_2_4_p_0(
#line 7527 "io.m"
  MR_Box mercury__io__param_1,
#line 7527 "io.m"
  MR_Integer * mercury__io__param_2);

#line 7035 "io.m"
void MR_CALL 
mercury__io__throw_io_error_1_p_0(
#line 7035 "io.m"
  MR_String mercury__io__param_1);

#line 5468 "io.m"
void MR_CALL 
mercury__io__init_state_2_p_0(void);

#line 5307 "io.m"
void MR_CALL 
mercury__io__unsafe_set_globals_3_p_0(
#line 5307 "io.m"
  MR_Word mercury__io__param_1);

#line 5298 "io.m"
void MR_CALL 
mercury__io__unsafe_get_globals_3_p_0(
#line 5298 "io.m"
  MR_Word * mercury__io__param_1);

#line 5263 "io.m"
void MR_CALL 
mercury__io__unlock_globals_2_p_0(void);

#line 5248 "io.m"
void MR_CALL 
mercury__io__lock_globals_2_p_0(void);

#line 5175 "io.m"
void MR_CALL 
mercury__io__maybe_delete_stream_info_3_p_0(
#line 5175 "io.m"
  MR_Box mercury__io__param_1);

#line 5086 "io.m"
void MR_CALL 
mercury__io__unlock_stream_db_2_p_0(void);

#line 5074 "io.m"
void MR_CALL 
mercury__io__lock_stream_db_2_p_0(void);

#line 5034 "io.m"
MR_String MR_CALL 
mercury__io__source_name_1_f_0(
#line 5034 "io.m"
  MR_Word mercury__io__param_1);

#line 4995 "io.m"
MR_Word MR_CALL 
mercury__io__maybe_stream_info_2_f_0(
#line 4995 "io.m"
  MR_Word mercury__io__param_1,
#line 4995 "io.m"
  MR_Box mercury__io__param_2);

#line 4970 "io.m"
void MR_CALL 
mercury__io__stream_info_4_p_0(
#line 4970 "io.m"
  MR_Box mercury__io__param_1,
#line 4970 "io.m"
  MR_Word * mercury__io__param_2);

#line 4957 "io.m"
void MR_CALL 
mercury__io__stream_name_4_p_0(
#line 4957 "io.m"
  MR_Box mercury__io__param_1,
#line 4957 "io.m"
  MR_String * mercury__io__param_2);

#line 4546 "io.m"
void MR_CALL 
mercury__io__process_read_term_3_p_0(
#line 4546 "io.m"
  MR_Word mercury__io__param_1,
#line 4546 "io.m"
  MR_Word mercury__io__param_2,
#line 4546 "io.m"
  MR_Integer mercury__io__param_3,
#line 4546 "io.m"
  MR_Word * mercury__io__param_4);

#line 4522 "io.m"
MR_Integer MR_CALL 
mercury__io__chunk_size_0_f_0(void);

#line 4495 "io.m"
void MR_CALL 
mercury__io__should_reduce_stack_usage_1_p_0(
#line 4495 "io.m"
  MR_Word * mercury__io__param_1);

#line 4455 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_maybe_stop_inner_7_p_1(
#line 4455 "io.m"
  MR_Word mercury__io__param_1,
#line 4455 "io.m"
  MR_Integer mercury__io__param_2,
#line 4455 "io.m"
  MR_Word mercury__io__param_3,
#line 4455 "io.m"
  MR_Word mercury__io__param_4,
#line 4455 "io.m"
  MR_Box mercury__io__param_5,
#line 4455 "io.m"
  MR_Word * mercury__io__param_6);

#line 4452 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_maybe_stop_inner_7_p_0(
#line 4452 "io.m"
  MR_Word mercury__io__param_1,
#line 4452 "io.m"
  MR_Integer mercury__io__param_2,
#line 4452 "io.m"
  MR_Word mercury__io__param_3,
#line 4452 "io.m"
  MR_Word mercury__io__param_4,
#line 4452 "io.m"
  MR_Box mercury__io__param_5,
#line 4452 "io.m"
  MR_Word * mercury__io__param_6);

#line 4429 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_maybe_stop_chunk_6_p_1(
#line 4429 "io.m"
  MR_Word mercury__io__param_1,
#line 4429 "io.m"
  MR_Word mercury__io__param_2,
#line 4429 "io.m"
  MR_Word mercury__io__param_3,
#line 4429 "io.m"
  MR_Box mercury__io__param_4,
#line 4429 "io.m"
  MR_Word * mercury__io__param_5);

#line 4426 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_maybe_stop_chunk_6_p_0(
#line 4426 "io.m"
  MR_Word mercury__io__param_1,
#line 4426 "io.m"
  MR_Word mercury__io__param_2,
#line 4426 "io.m"
  MR_Word mercury__io__param_3,
#line 4426 "io.m"
  MR_Box mercury__io__param_4,
#line 4426 "io.m"
  MR_Word * mercury__io__param_5);

#line 4397 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_maybe_stop_plain_6_p_1(
#line 4397 "io.m"
  MR_Word mercury__io__param_1,
#line 4397 "io.m"
  MR_Word mercury__io__param_2,
#line 4397 "io.m"
  MR_Word mercury__io__param_3,
#line 4397 "io.m"
  MR_Box mercury__io__param_4,
#line 4397 "io.m"
  MR_Word * mercury__io__param_5);

#line 4394 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_maybe_stop_plain_6_p_0(
#line 4394 "io.m"
  MR_Word mercury__io__param_1,
#line 4394 "io.m"
  MR_Word mercury__io__param_2,
#line 4394 "io.m"
  MR_Word mercury__io__param_3,
#line 4394 "io.m"
  MR_Box mercury__io__param_4,
#line 4394 "io.m"
  MR_Word * mercury__io__param_5);

#line 4353 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_inner_7_p_1(
#line 4353 "io.m"
  MR_Word mercury__io__param_1,
#line 4353 "io.m"
  MR_Integer mercury__io__param_2,
#line 4353 "io.m"
  MR_Word mercury__io__param_3,
#line 4353 "io.m"
  MR_Word mercury__io__param_4,
#line 4353 "io.m"
  MR_Box mercury__io__param_5,
#line 4353 "io.m"
  MR_Word * mercury__io__param_6);

#line 4351 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_inner_7_p_0(
#line 4351 "io.m"
  MR_Word mercury__io__param_1,
#line 4351 "io.m"
  MR_Integer mercury__io__param_2,
#line 4351 "io.m"
  MR_Word mercury__io__param_3,
#line 4351 "io.m"
  MR_Word mercury__io__param_4,
#line 4351 "io.m"
  MR_Box mercury__io__param_5,
#line 4351 "io.m"
  MR_Word * mercury__io__param_6);

#line 4332 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_chunk_6_p_1(
#line 4332 "io.m"
  MR_Word mercury__io__param_1,
#line 4332 "io.m"
  MR_Word mercury__io__param_2,
#line 4332 "io.m"
  MR_Word mercury__io__param_3,
#line 4332 "io.m"
  MR_Box mercury__io__param_4,
#line 4332 "io.m"
  MR_Word * mercury__io__param_5);

#line 4330 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_chunk_6_p_0(
#line 4330 "io.m"
  MR_Word mercury__io__param_1,
#line 4330 "io.m"
  MR_Word mercury__io__param_2,
#line 4330 "io.m"
  MR_Word mercury__io__param_3,
#line 4330 "io.m"
  MR_Box mercury__io__param_4,
#line 4330 "io.m"
  MR_Word * mercury__io__param_5);

#line 4311 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_plain_6_p_1(
#line 4311 "io.m"
  MR_Word mercury__io__param_1,
#line 4311 "io.m"
  MR_Word mercury__io__param_2,
#line 4311 "io.m"
  MR_Word mercury__io__param_3,
#line 4311 "io.m"
  MR_Box mercury__io__param_4,
#line 4311 "io.m"
  MR_Word * mercury__io__param_5);

#line 4309 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_plain_6_p_0(
#line 4309 "io.m"
  MR_Word mercury__io__param_1,
#line 4309 "io.m"
  MR_Word mercury__io__param_2,
#line 4309 "io.m"
  MR_Word mercury__io__param_3,
#line 4309 "io.m"
  MR_Box mercury__io__param_4,
#line 4309 "io.m"
  MR_Word * mercury__io__param_5);

#line 4271 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl_io_inner_6_p_1(
#line 4271 "io.m"
  MR_Integer mercury__io__param_1,
#line 4271 "io.m"
  MR_Word mercury__io__param_2,
#line 4271 "io.m"
  MR_Word mercury__io__param_3,
#line 4271 "io.m"
  MR_Word * mercury__io__param_4);

#line 4269 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl_io_inner_6_p_0(
#line 4269 "io.m"
  MR_Integer mercury__io__param_1,
#line 4269 "io.m"
  MR_Word mercury__io__param_2,
#line 4269 "io.m"
  MR_Word mercury__io__param_3,
#line 4269 "io.m"
  MR_Word * mercury__io__param_4);

#line 4250 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl_io_chunk_5_p_1(
#line 4250 "io.m"
  MR_Word mercury__io__param_1,
#line 4250 "io.m"
  MR_Word mercury__io__param_2,
#line 4250 "io.m"
  MR_Word * mercury__io__param_3);

#line 4248 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl_io_chunk_5_p_0(
#line 4248 "io.m"
  MR_Word mercury__io__param_1,
#line 4248 "io.m"
  MR_Word mercury__io__param_2,
#line 4248 "io.m"
  MR_Word * mercury__io__param_3);

#line 4229 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl_io_plain_5_p_1(
#line 4229 "io.m"
  MR_Word mercury__io__param_1,
#line 4229 "io.m"
  MR_Word mercury__io__param_2,
#line 4229 "io.m"
  MR_Word * mercury__io__param_3);

#line 4227 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl_io_plain_5_p_0(
#line 4227 "io.m"
  MR_Word mercury__io__param_1,
#line 4227 "io.m"
  MR_Word mercury__io__param_2,
#line 4227 "io.m"
  MR_Word * mercury__io__param_3);

#line 4174 "io.m"
void MR_CALL 
mercury__io__read_binary_file_2_5_p_0(
#line 4174 "io.m"
  MR_Word mercury__io__param_1,
#line 4174 "io.m"
  MR_Word mercury__io__param_2,
#line 4174 "io.m"
  MR_Word * mercury__io__param_3);

#line 3842 "io.m"
void MR_CALL 
mercury__io__compare_file_id_3_p_0(
#line 3842 "io.m"
  MR_Word * mercury__io__param_1,
#line 3842 "io.m"
  MR_Box mercury__io__param_2,
#line 3842 "io.m"
  MR_Box mercury__io__param_3);

#line 3491 "io.m"
void MR_CALL 
mercury__io__check_file_accessibility_dotnet_5_p_0(
#line 3491 "io.m"
  MR_String mercury__io__param_1,
#line 3491 "io.m"
  MR_Word mercury__io__param_2,
#line 3491 "io.m"
  MR_Word * mercury__io__param_3);

#line 3334 "io.m"
void MR_CALL 
mercury__io__check_file_accessibility_2_5_p_0(
#line 3334 "io.m"
  MR_String mercury__io__param_1,
#line 3334 "io.m"
  MR_Word mercury__io__param_2,
#line 3334 "io.m"
  MR_Word * mercury__io__param_3);

#line 2828 "io.m"
void MR_CALL 
mercury__io__file_modification_time_2_6_p_0(
#line 2828 "io.m"
  MR_String mercury__io__param_1,
#line 2828 "io.m"
  MR_Integer * mercury__io__param_2,
#line 2828 "io.m"
  MR_String * mercury__io__param_3,
#line 2828 "io.m"
  MR_Word * mercury__io__param_4);

#line 2583 "io.m"
void MR_CALL 
mercury__io__get_system_error_3_p_0(
#line 2583 "io.m"
  MR_Box * mercury__io__param_1);

#line 2577 "io.m"
void MR_CALL 
mercury__io__make_err_msg_4_p_0(
#line 2577 "io.m"
  MR_String mercury__io__param_1,
#line 2577 "io.m"
  MR_String * mercury__io__param_2);

#line 2282 "io.m"
void MR_CALL 
mercury__io__read_file_2_5_p_0(
#line 2282 "io.m"
  MR_Word mercury__io__param_1,
#line 2282 "io.m"
  MR_Word mercury__io__param_2,
#line 2282 "io.m"
  MR_Word * mercury__io__param_3);

#line 1839 "io.m"
MR_bool MR_CALL 
mercury__io__getenv_2_p_0(
#line 1839 "io.m"
  MR_String mercury__io__param_1,
#line 1839 "io.m"
  MR_String * mercury__io__param_2);

#line 1831 "io.m"
void MR_CALL 
mercury__io__call_system_code_5_p_0(
#line 1831 "io.m"
  MR_String mercury__io__param_1,
#line 1831 "io.m"
  MR_Integer * mercury__io__param_2,
#line 1831 "io.m"
  MR_String * mercury__io__param_3);

#line 1822 "io.m"
void MR_CALL 
mercury__io__read_byte_val_4_p_0(
#line 1822 "io.m"
  MR_Word mercury__io__param_1,
#line 1822 "io.m"
  MR_Integer * mercury__io__param_2);

#line 1816 "io.m"
void MR_CALL 
mercury__io__read_char_code_4_p_0(
#line 1816 "io.m"
  MR_Word mercury__io__param_1,
#line 1816 "io.m"
  MR_Integer * mercury__io__param_2);

#line 1802 "io.m"
MR_Integer MR_CALL 
mercury__io__get_stream_id_1_f_0(
#line 1802 "io.m"
  MR_Box mercury__io__param_1);

#line 1666 "io.m"
MR_Word MR_CALL 
mercury__io__handle_system_command_exit_status_1_f_0(
#line 1666 "io.m"
  MR_Integer mercury__io__param_1);

#line 1657 "io.m"
MR_bool MR_CALL 
mercury__io__get_io_stream_info_2_f_0(
#line 1657 "io.m"
  MR_Word mercury__io__param_1,
#line 1657 "io.m"
  MR_Word mercury__io__param_2,
#line 1657 "io.m"
  MR_Box mercury__io__param_3,
#line 1657 "io.m"
  MR_Word * mercury__io__param_4);

#line 1652 "io.m"
MR_Word MR_CALL 
mercury__io__binary_output_stream_info_2_f_0(
#line 1652 "io.m"
  MR_Word mercury__io__param_1,
#line 1652 "io.m"
  MR_Word mercury__io__param_2);

#line 1646 "io.m"
MR_Word MR_CALL 
mercury__io__binary_input_stream_info_2_f_0(
#line 1646 "io.m"
  MR_Word mercury__io__param_1,
#line 1646 "io.m"
  MR_Word mercury__io__param_2);

#line 1640 "io.m"
MR_Word MR_CALL 
mercury__io__output_stream_info_2_f_0(
#line 1640 "io.m"
  MR_Word mercury__io__param_1,
#line 1640 "io.m"
  MR_Word mercury__io__param_2);

#line 1634 "io.m"
MR_Word MR_CALL 
mercury__io__input_stream_info_2_f_0(
#line 1634 "io.m"
  MR_Word mercury__io__param_1,
#line 1634 "io.m"
  MR_Word mercury__io__param_2);

#line 1629 "io.m"
void MR_CALL 
mercury__io__get_stream_db_with_locking_1_p_0(
#line 1629 "io.m"
  MR_Word * mercury__io__param_1);

#line 1628 "io.m"
void MR_CALL 
mercury__io__get_stream_db_3_p_0(
#line 1628 "io.m"
  MR_Word * mercury__io__param_1);

#line 1582 "io.m"
void MR_CALL 
mercury__io__set_op_table_3_p_0(void);

#line 1580 "io.m"
void MR_CALL 
mercury__io__get_op_table_3_p_0(void);

#line 1572 "io.m"
MR_bool MR_CALL 
mercury__io__have_file_ids_0_p_0(void);

#line 1568 "io.m"
void MR_CALL 
mercury__io__file_id_4_p_0(
#line 1568 "io.m"
  MR_String mercury__io__param_1,
#line 1568 "io.m"
  MR_Word * mercury__io__param_2);

#line 1555 "io.m"
void MR_CALL 
mercury__io__make_maybe_win32_err_msg_5_p_0(
#line 1555 "io.m"
  MR_Box mercury__io__param_1,
#line 1555 "io.m"
  MR_String mercury__io__param_2,
#line 1555 "io.m"
  MR_String * mercury__io__param_3);

#line 1545 "io.m"
void MR_CALL 
mercury__io__make_win32_err_msg_5_p_0(
#line 1545 "io.m"
  MR_Box mercury__io__param_1,
#line 1545 "io.m"
  MR_String mercury__io__param_2,
#line 1545 "io.m"
  MR_String * mercury__io__param_3);

#line 1535 "io.m"
MR_bool MR_CALL 
mercury__io__have_dotnet_0_p_0(void);

#line 1531 "io.m"
MR_bool MR_CALL 
mercury__io__have_cygwin_0_p_0(void);

#line 1527 "io.m"
MR_bool MR_CALL 
mercury__io__have_win32_0_p_0(void);

#line 1522 "io.m"
void MR_CALL 
mercury__io__make_err_msg_5_p_0(
#line 1522 "io.m"
  MR_Box mercury__io__param_1,
#line 1522 "io.m"
  MR_String mercury__io__param_2,
#line 1522 "io.m"
  MR_String * mercury__io__param_3);

#line 1450 "io.m"
void MR_CALL 
mercury__io__error_message_2_p_0(
#line 1450 "io.m"
  MR_Word mercury__io__param_1,
#line 1450 "io.m"
  MR_String * mercury__io__param_2);

#line 1449 "io.m"
MR_String MR_CALL 
mercury__io__error_message_1_f_0(
#line 1449 "io.m"
  MR_Word mercury__io__param_1);

#line 1445 "io.m"
MR_Word MR_CALL 
mercury__io__make_io_error_1_f_0(
#line 1445 "io.m"
  MR_String mercury__io__param_1);

#line 1440 "io.m"
void MR_CALL 
mercury__io__call_system_return_signal_4_p_0(
#line 1440 "io.m"
  MR_String mercury__io__param_1,
#line 1440 "io.m"
  MR_Word * mercury__io__param_2);

#line 1423 "io.m"
void MR_CALL 
mercury__io__call_system_4_p_0(
#line 1423 "io.m"
  MR_String mercury__io__param_1,
#line 1423 "io.m"
  MR_Word * mercury__io__param_2);

#line 1409 "io.m"
void MR_CALL 
mercury__io__report_stats_3_p_0(
#line 1409 "io.m"
  MR_String mercury__io__param_1);

#line 1387 "io.m"
void MR_CALL 
mercury__io__report_stats_2_p_0(void);

#line 1377 "io.m"
void MR_CALL 
mercury__io__file_modification_time_4_p_0(
#line 1377 "io.m"
  MR_String mercury__io__param_1,
#line 1377 "io.m"
  MR_Word * mercury__io__param_2);

#line 1371 "io.m"
void MR_CALL 
mercury__io__file_type_5_p_0(
#line 1371 "io.m"
  MR_Word mercury__io__param_1,
#line 1371 "io.m"
  MR_String mercury__io__param_2,
#line 1371 "io.m"
  MR_Word * mercury__io__param_3);

#line 1352 "io.m"
void MR_CALL 
mercury__io__check_file_accessibility_5_p_0(
#line 1352 "io.m"
  MR_String mercury__io__param_1,
#line 1352 "io.m"
  MR_Word mercury__io__param_2,
#line 1352 "io.m"
  MR_Word * mercury__io__param_3);

#line 1335 "io.m"
void MR_CALL 
mercury__io__read_symlink_4_p_0(
#line 1335 "io.m"
  MR_String mercury__io__param_1,
#line 1335 "io.m"
  MR_Word * mercury__io__param_2);

#line 1326 "io.m"
void MR_CALL 
mercury__io__make_symlink_5_p_0(
#line 1326 "io.m"
  MR_String mercury__io__param_1,
#line 1326 "io.m"
  MR_String mercury__io__param_2,
#line 1326 "io.m"
  MR_Word * mercury__io__param_3);

#line 1318 "io.m"
MR_bool MR_CALL 
mercury__io__have_symlinks_0_p_0(void);

#line 1313 "io.m"
void MR_CALL 
mercury__io__rename_file_5_p_0(
#line 1313 "io.m"
  MR_String mercury__io__param_1,
#line 1313 "io.m"
  MR_String mercury__io__param_2,
#line 1313 "io.m"
  MR_Word * mercury__io__param_3);

#line 1300 "io.m"
void MR_CALL 
mercury__io__remove_file_recursively_4_p_0(
#line 1300 "io.m"
  MR_String mercury__io__param_1,
#line 1300 "io.m"
  MR_Word * mercury__io__param_2);

#line 1289 "io.m"
void MR_CALL 
mercury__io__remove_file_4_p_0(
#line 1289 "io.m"
  MR_String mercury__io__param_1,
#line 1289 "io.m"
  MR_Word * mercury__io__param_2);

#line 1281 "io.m"
void MR_CALL 
mercury__io__make_temp_5_p_0(
#line 1281 "io.m"
  MR_String mercury__io__param_1,
#line 1281 "io.m"
  MR_String mercury__io__param_2,
#line 1281 "io.m"
  MR_String * mercury__io__param_3);

#line 1272 "io.m"
void MR_CALL 
mercury__io__make_temp_3_p_0(
#line 1272 "io.m"
  MR_String * mercury__io__param_1);

#line 1245 "io.m"
void MR_CALL 
mercury__io__set_environment_var_4_p_0(
#line 1245 "io.m"
  MR_String mercury__io__param_1,
#line 1245 "io.m"
  MR_String mercury__io__param_2);

#line 1236 "io.m"
void MR_CALL 
mercury__io__get_environment_var_4_p_0(
#line 1236 "io.m"
  MR_String mercury__io__param_1,
#line 1236 "io.m"
  MR_Word * mercury__io__param_2);

#line 1225 "io.m"
void MR_CALL 
mercury__io__update_globals_3_p_0(
#line 1225 "io.m"
  MR_Word mercury__io__param_1);

#line 1211 "io.m"
void MR_CALL 
mercury__io__set_globals_3_p_0(
#line 1211 "io.m"
  MR_Word mercury__io__param_1);

#line 1210 "io.m"
void MR_CALL 
mercury__io__get_globals_3_p_0(
#line 1210 "io.m"
  MR_Word * mercury__io__param_1);

#line 1201 "io.m"
void MR_CALL 
mercury__io__set_exit_status_3_p_0(
#line 1201 "io.m"
  MR_Integer mercury__io__param_1);

#line 1200 "io.m"
void MR_CALL 
mercury__io__get_exit_status_3_p_0(
#line 1200 "io.m"
  MR_Integer * mercury__io__param_1);

#line 1193 "io.m"
void MR_CALL 
mercury__io__command_line_arguments_3_p_0(
#line 1193 "io.m"
  MR_Word * mercury__io__param_1);

#line 1188 "io.m"
void MR_CALL 
mercury__io__progname_base_4_p_0(
#line 1188 "io.m"
  MR_String mercury__io__param_1,
#line 1188 "io.m"
  MR_String * mercury__io__param_2);

#line 1181 "io.m"
void MR_CALL 
mercury__io__progname_4_p_0(
#line 1181 "io.m"
  MR_String mercury__io__param_1,
#line 1181 "io.m"
  MR_String * mercury__io__param_2);

#line 1167 "io.m"
void MR_CALL 
mercury__io__binary_output_stream_name_4_p_0(
#line 1167 "io.m"
  MR_Word mercury__io__param_1,
#line 1167 "io.m"
  MR_String * mercury__io__param_2);

#line 1162 "io.m"
void MR_CALL 
mercury__io__binary_output_stream_name_3_p_0(
#line 1162 "io.m"
  MR_String * mercury__io__param_1);

#line 1156 "io.m"
void MR_CALL 
mercury__io__set_binary_output_stream_4_p_0(
#line 1156 "io.m"
  MR_Word mercury__io__param_1,
#line 1156 "io.m"
  MR_Word * mercury__io__param_2);

#line 1150 "io.m"
void MR_CALL 
mercury__io__stdout_binary_stream_3_p_0(
#line 1150 "io.m"
  MR_Word * mercury__io__param_1);

#line 1144 "io.m"
void MR_CALL 
mercury__io__binary_output_stream_3_p_0(
#line 1144 "io.m"
  MR_Word * mercury__io__param_1);

#line 1138 "io.m"
void MR_CALL 
mercury__io__close_binary_output_3_p_0(
#line 1138 "io.m"
  MR_Word mercury__io__param_1);

#line 1132 "io.m"
void MR_CALL 
mercury__io__open_binary_append_4_p_0(
#line 1132 "io.m"
  MR_String mercury__io__param_1,
#line 1132 "io.m"
  MR_Word * mercury__io__param_2);

#line 1126 "io.m"
void MR_CALL 
mercury__io__open_binary_output_4_p_0(
#line 1126 "io.m"
  MR_String mercury__io__param_1,
#line 1126 "io.m"
  MR_Word * mercury__io__param_2);

#line 1121 "io.m"
void MR_CALL 
mercury__io__told_binary_2_p_0(void);

#line 1115 "io.m"
void MR_CALL 
mercury__io__tell_binary_4_p_0(
#line 1115 "io.m"
  MR_String mercury__io__param_1,
#line 1115 "io.m"
  MR_Word * mercury__io__param_2);

#line 1103 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_name_4_p_0(
#line 1103 "io.m"
  MR_Word mercury__io__param_1,
#line 1103 "io.m"
  MR_String * mercury__io__param_2);

#line 1098 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_name_3_p_0(
#line 1098 "io.m"
  MR_String * mercury__io__param_1);

#line 1092 "io.m"
void MR_CALL 
mercury__io__stdin_binary_stream_3_p_0(
#line 1092 "io.m"
  MR_Word * mercury__io__param_1);

#line 1086 "io.m"
void MR_CALL 
mercury__io__set_binary_input_stream_4_p_0(
#line 1086 "io.m"
  MR_Word mercury__io__param_1,
#line 1086 "io.m"
  MR_Word * mercury__io__param_2);

#line 1080 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_3_p_0(
#line 1080 "io.m"
  MR_Word * mercury__io__param_1);

#line 1074 "io.m"
void MR_CALL 
mercury__io__close_binary_input_3_p_0(
#line 1074 "io.m"
  MR_Word mercury__io__param_1);

#line 1068 "io.m"
void MR_CALL 
mercury__io__open_binary_input_4_p_0(
#line 1068 "io.m"
  MR_String mercury__io__param_1,
#line 1068 "io.m"
  MR_Word * mercury__io__param_2);

#line 1063 "io.m"
void MR_CALL 
mercury__io__seen_binary_2_p_0(void);

#line 1057 "io.m"
void MR_CALL 
mercury__io__see_binary_4_p_0(
#line 1057 "io.m"
  MR_String mercury__io__param_1,
#line 1057 "io.m"
  MR_Word * mercury__io__param_2);

#line 1045 "io.m"
void MR_CALL 
mercury__io__binary_output_stream_offset_4_p_0(
#line 1045 "io.m"
  MR_Word mercury__io__param_1,
#line 1045 "io.m"
  MR_Integer * mercury__io__param_2);

#line 1040 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_offset_4_p_0(
#line 1040 "io.m"
  MR_Word mercury__io__param_1,
#line 1040 "io.m"
  MR_Integer * mercury__io__param_2);

#line 1035 "io.m"
void MR_CALL 
mercury__io__seek_binary_output_5_p_0(
#line 1035 "io.m"
  MR_Word mercury__io__param_1,
#line 1035 "io.m"
  MR_Word mercury__io__param_2,
#line 1035 "io.m"
  MR_Integer mercury__io__param_3);

#line 1028 "io.m"
void MR_CALL 
mercury__io__seek_binary_input_5_p_0(
#line 1028 "io.m"
  MR_Word mercury__io__param_1,
#line 1028 "io.m"
  MR_Word mercury__io__param_2,
#line 1028 "io.m"
  MR_Integer mercury__io__param_3);

#line 1019 "io.m"
void MR_CALL 
mercury__io__flush_binary_output_3_p_0(
#line 1019 "io.m"
  MR_Word mercury__io__param_1);

#line 1015 "io.m"
void MR_CALL 
mercury__io__flush_binary_output_2_p_0(void);

#line 1011 "io.m"
void MR_CALL 
mercury__io__write_bitmap_6_p_0(
#line 1011 "io.m"
  MR_Word mercury__io__param_1,
#line 1011 "io.m"
  MR_Box mercury__io__param_2,
#line 1011 "io.m"
  MR_Integer mercury__io__param_3,
#line 1011 "io.m"
  MR_Integer mercury__io__param_4);

#line 1004 "io.m"
void MR_CALL 
mercury__io__write_bitmap_4_p_0(
#line 1004 "io.m"
  MR_Word mercury__io__param_1,
#line 1004 "io.m"
  MR_Box mercury__io__param_2);

#line 997 "io.m"
void MR_CALL 
mercury__io__write_bitmap_5_p_0(
#line 997 "io.m"
  MR_Box mercury__io__param_1,
#line 997 "io.m"
  MR_Integer mercury__io__param_2,
#line 997 "io.m"
  MR_Integer mercury__io__param_3);

#line 990 "io.m"
void MR_CALL 
mercury__io__write_bitmap_3_p_0(
#line 990 "io.m"
  MR_Box mercury__io__param_1);

#line 982 "io.m"
void MR_CALL 
mercury__io__write_byte_4_p_0(
#line 982 "io.m"
  MR_Word mercury__io__param_1,
#line 982 "io.m"
  MR_Integer mercury__io__param_2);

#line 977 "io.m"
void MR_CALL 
mercury__io__write_byte_3_p_0(
#line 977 "io.m"
  MR_Integer mercury__io__param_1);

#line 971 "io.m"
void MR_CALL 
mercury__io__write_binary_4_p_0(
#line 971 "io.m"
  MR_Word mercury__io__param_1,
#line 971 "io.m"
  MR_Word mercury__io__param_2,
#line 971 "io.m"
  MR_Box mercury__io__param_3);

#line 963 "io.m"
void MR_CALL 
mercury__io__write_binary_3_p_0(
#line 963 "io.m"
  MR_Word mercury__io__param_1,
#line 963 "io.m"
  MR_Box mercury__io__param_2);

#line 949 "io.m"
void MR_CALL 
mercury__io__putback_byte_4_p_0(
#line 949 "io.m"
  MR_Word mercury__io__param_1,
#line 949 "io.m"
  MR_Integer mercury__io__param_2);

#line 935 "io.m"
void MR_CALL 
mercury__io__putback_byte_3_p_0(
#line 935 "io.m"
  MR_Integer mercury__io__param_1);

#line 920 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_maybe_stop_6_p_1(
#line 920 "io.m"
  MR_Word mercury__io__param_1,
#line 920 "io.m"
  MR_Word mercury__io__param_2,
#line 920 "io.m"
  MR_Word mercury__io__param_3,
#line 920 "io.m"
  MR_Box mercury__io__param_4,
#line 920 "io.m"
  MR_Word * mercury__io__param_5);

#line 918 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_maybe_stop_6_p_0(
#line 918 "io.m"
  MR_Word mercury__io__param_1,
#line 918 "io.m"
  MR_Word mercury__io__param_2,
#line 918 "io.m"
  MR_Word mercury__io__param_3,
#line 918 "io.m"
  MR_Box mercury__io__param_4,
#line 918 "io.m"
  MR_Word * mercury__io__param_5);

#line 909 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_6_p_1(
#line 909 "io.m"
  MR_Word mercury__io__param_1,
#line 909 "io.m"
  MR_Word mercury__io__param_2,
#line 909 "io.m"
  MR_Word mercury__io__param_3,
#line 909 "io.m"
  MR_Box mercury__io__param_4,
#line 909 "io.m"
  MR_Word * mercury__io__param_5);

#line 907 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_6_p_0(
#line 907 "io.m"
  MR_Word mercury__io__param_1,
#line 907 "io.m"
  MR_Word mercury__io__param_2,
#line 907 "io.m"
  MR_Word mercury__io__param_3,
#line 907 "io.m"
  MR_Box mercury__io__param_4,
#line 907 "io.m"
  MR_Word * mercury__io__param_5);

#line 899 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl_io_5_p_1(
#line 899 "io.m"
  MR_Word mercury__io__param_1,
#line 899 "io.m"
  MR_Word mercury__io__param_2,
#line 899 "io.m"
  MR_Word * mercury__io__param_3);

#line 897 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl_io_5_p_0(
#line 897 "io.m"
  MR_Word mercury__io__param_1,
#line 897 "io.m"
  MR_Word mercury__io__param_2,
#line 897 "io.m"
  MR_Word * mercury__io__param_3);

#line 889 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl_6_p_1(
#line 889 "io.m"
  MR_Word mercury__io__param_1,
#line 889 "io.m"
  MR_Word mercury__io__param_2,
#line 889 "io.m"
  MR_Word mercury__io__param_3,
#line 889 "io.m"
  MR_Box mercury__io__param_4,
#line 889 "io.m"
  MR_Word * mercury__io__param_5);

#line 887 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl_6_p_0(
#line 887 "io.m"
  MR_Word mercury__io__param_1,
#line 887 "io.m"
  MR_Word mercury__io__param_2,
#line 887 "io.m"
  MR_Word mercury__io__param_3,
#line 887 "io.m"
  MR_Box mercury__io__param_4,
#line 887 "io.m"
  MR_Word * mercury__io__param_5);

#line 879 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_maybe_stop_5_p_1(
#line 879 "io.m"
  MR_Word mercury__io__param_1,
#line 879 "io.m"
  MR_Word mercury__io__param_2,
#line 879 "io.m"
  MR_Box mercury__io__param_3,
#line 879 "io.m"
  MR_Word * mercury__io__param_4);

#line 877 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_maybe_stop_5_p_0(
#line 877 "io.m"
  MR_Word mercury__io__param_1,
#line 877 "io.m"
  MR_Word mercury__io__param_2,
#line 877 "io.m"
  MR_Box mercury__io__param_3,
#line 877 "io.m"
  MR_Word * mercury__io__param_4);

#line 868 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_5_p_1(
#line 868 "io.m"
  MR_Word mercury__io__param_1,
#line 868 "io.m"
  MR_Word mercury__io__param_2,
#line 868 "io.m"
  MR_Box mercury__io__param_3,
#line 868 "io.m"
  MR_Word * mercury__io__param_4);

#line 866 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl2_io_5_p_0(
#line 866 "io.m"
  MR_Word mercury__io__param_1,
#line 866 "io.m"
  MR_Word mercury__io__param_2,
#line 866 "io.m"
  MR_Box mercury__io__param_3,
#line 866 "io.m"
  MR_Word * mercury__io__param_4);

#line 858 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl_io_4_p_1(
#line 858 "io.m"
  MR_Word mercury__io__param_1,
#line 858 "io.m"
  MR_Word * mercury__io__param_2);

#line 856 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl_io_4_p_0(
#line 856 "io.m"
  MR_Word mercury__io__param_1,
#line 856 "io.m"
  MR_Word * mercury__io__param_2);

#line 848 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl_5_p_1(
#line 848 "io.m"
  MR_Word mercury__io__param_1,
#line 848 "io.m"
  MR_Word mercury__io__param_2,
#line 848 "io.m"
  MR_Box mercury__io__param_3,
#line 848 "io.m"
  MR_Word * mercury__io__param_4);

#line 846 "io.m"
void MR_CALL 
mercury__io__binary_input_stream_foldl_5_p_0(
#line 846 "io.m"
  MR_Word mercury__io__param_1,
#line 846 "io.m"
  MR_Word mercury__io__param_2,
#line 846 "io.m"
  MR_Box mercury__io__param_3,
#line 846 "io.m"
  MR_Word * mercury__io__param_4);

#line 838 "io.m"
void MR_CALL 
mercury__io__read_binary_file_4_p_0(
#line 838 "io.m"
  MR_Word mercury__io__param_1,
#line 838 "io.m"
  MR_Word * mercury__io__param_2);

#line 833 "io.m"
void MR_CALL 
mercury__io__read_binary_file_3_p_0(
#line 833 "io.m"
  MR_Word * mercury__io__param_1);

#line 827 "io.m"
void MR_CALL 
mercury__io__read_binary_file_as_bitmap_4_p_0(
#line 827 "io.m"
  MR_Word mercury__io__param_1,
#line 827 "io.m"
  MR_Word * mercury__io__param_2);

#line 821 "io.m"
void MR_CALL 
mercury__io__read_binary_file_as_bitmap_3_p_0(
#line 821 "io.m"
  MR_Word * mercury__io__param_1);

#line 814 "io.m"
void MR_CALL 
mercury__io__read_bitmap_9_p_0(
#line 814 "io.m"
  MR_Word mercury__io__param_1,
#line 814 "io.m"
  MR_Integer mercury__io__param_2,
#line 814 "io.m"
  MR_Integer mercury__io__param_3,
#line 814 "io.m"
  MR_Box mercury__io__param_4,
#line 814 "io.m"
  MR_Box * mercury__io__param_5,
#line 814 "io.m"
  MR_Integer * mercury__io__param_6,
#line 814 "io.m"
  MR_Word * mercury__io__param_7);

#line 801 "io.m"
void MR_CALL 
mercury__io__read_bitmap_8_p_0(
#line 801 "io.m"
  MR_Integer mercury__io__param_1,
#line 801 "io.m"
  MR_Integer mercury__io__param_2,
#line 801 "io.m"
  MR_Box mercury__io__param_3,
#line 801 "io.m"
  MR_Box * mercury__io__param_4,
#line 801 "io.m"
  MR_Integer * mercury__io__param_5,
#line 801 "io.m"
  MR_Word * mercury__io__param_6);

#line 789 "io.m"
void MR_CALL 
mercury__io__read_bitmap_7_p_0(
#line 789 "io.m"
  MR_Word mercury__io__param_1,
#line 789 "io.m"
  MR_Box mercury__io__param_2,
#line 789 "io.m"
  MR_Box * mercury__io__param_3,
#line 789 "io.m"
  MR_Integer * mercury__io__param_4,
#line 789 "io.m"
  MR_Word * mercury__io__param_5);

#line 781 "io.m"
void MR_CALL 
mercury__io__read_bitmap_6_p_0(
#line 781 "io.m"
  MR_Box mercury__io__param_1,
#line 781 "io.m"
  MR_Box * mercury__io__param_2,
#line 781 "io.m"
  MR_Integer * mercury__io__param_3,
#line 781 "io.m"
  MR_Word * mercury__io__param_4);

#line 773 "io.m"
void MR_CALL 
mercury__io__read_byte_4_p_0(
#line 773 "io.m"
  MR_Word mercury__io__param_1,
#line 773 "io.m"
  MR_Word * mercury__io__param_2);

#line 769 "io.m"
void MR_CALL 
mercury__io__read_byte_3_p_0(
#line 769 "io.m"
  MR_Word * mercury__io__param_1);

#line 764 "io.m"
void MR_CALL 
mercury__io__read_binary_4_p_0(
#line 764 "io.m"
  MR_Word mercury__io__param_1,
#line 764 "io.m"
  MR_Word mercury__io__param_2,
#line 764 "io.m"
  MR_Word * mercury__io__param_3);

#line 750 "io.m"
void MR_CALL 
mercury__io__read_binary_3_p_0(
#line 750 "io.m"
  MR_Word mercury__io__param_1,
#line 750 "io.m"
  MR_Word * mercury__io__param_2);

#line 739 "io.m"
void MR_CALL 
mercury__io__set_output_line_number_4_p_0(
#line 739 "io.m"
  MR_Word mercury__io__param_1,
#line 739 "io.m"
  MR_Integer mercury__io__param_2);

#line 735 "io.m"
void MR_CALL 
mercury__io__set_output_line_number_3_p_0(
#line 735 "io.m"
  MR_Integer mercury__io__param_1);

#line 730 "io.m"
void MR_CALL 
mercury__io__get_output_line_number_4_p_0(
#line 730 "io.m"
  MR_Word mercury__io__param_1,
#line 730 "io.m"
  MR_Integer * mercury__io__param_2);

#line 724 "io.m"
void MR_CALL 
mercury__io__get_output_line_number_3_p_0(
#line 724 "io.m"
  MR_Integer * mercury__io__param_1);

#line 717 "io.m"
void MR_CALL 
mercury__io__output_stream_name_4_p_0(
#line 717 "io.m"
  MR_Word mercury__io__param_1,
#line 717 "io.m"
  MR_String * mercury__io__param_2);

#line 710 "io.m"
void MR_CALL 
mercury__io__output_stream_name_3_p_0(
#line 710 "io.m"
  MR_String * mercury__io__param_1);

#line 702 "io.m"
void MR_CALL 
mercury__io__stderr_stream_3_p_0(
#line 702 "io.m"
  MR_Word * mercury__io__param_1);

#line 697 "io.m"
MR_Word MR_CALL 
mercury__io__stderr_stream_0_f_0(void);

#line 693 "io.m"
void MR_CALL 
mercury__io__stdout_stream_3_p_0(
#line 693 "io.m"
  MR_Word * mercury__io__param_1);

#line 688 "io.m"
MR_Word MR_CALL 
mercury__io__stdout_stream_0_f_0(void);

#line 683 "io.m"
void MR_CALL 
mercury__io__set_output_stream_4_p_0(
#line 683 "io.m"
  MR_Word mercury__io__param_1,
#line 683 "io.m"
  MR_Word * mercury__io__param_2);

#line 678 "io.m"
void MR_CALL 
mercury__io__output_stream_3_p_0(
#line 678 "io.m"
  MR_Word * mercury__io__param_1);

#line 673 "io.m"
void MR_CALL 
mercury__io__close_output_3_p_0(
#line 673 "io.m"
  MR_Word mercury__io__param_1);

#line 667 "io.m"
void MR_CALL 
mercury__io__open_append_4_p_0(
#line 667 "io.m"
  MR_String mercury__io__param_1,
#line 667 "io.m"
  MR_Word * mercury__io__param_2);

#line 661 "io.m"
void MR_CALL 
mercury__io__open_output_4_p_0(
#line 661 "io.m"
  MR_String mercury__io__param_1,
#line 661 "io.m"
  MR_Word * mercury__io__param_2);

#line 656 "io.m"
void MR_CALL 
mercury__io__told_2_p_0(void);

#line 650 "io.m"
void MR_CALL 
mercury__io__tell_4_p_0(
#line 650 "io.m"
  MR_String mercury__io__param_1,
#line 650 "io.m"
  MR_Word * mercury__io__param_2);

#line 638 "io.m"
void MR_CALL 
mercury__io__set_line_number_4_p_0(
#line 638 "io.m"
  MR_Word mercury__io__param_1,
#line 638 "io.m"
  MR_Integer mercury__io__param_2);

#line 634 "io.m"
void MR_CALL 
mercury__io__set_line_number_3_p_0(
#line 634 "io.m"
  MR_Integer mercury__io__param_1);

#line 629 "io.m"
void MR_CALL 
mercury__io__get_line_number_4_p_0(
#line 629 "io.m"
  MR_Word mercury__io__param_1,
#line 629 "io.m"
  MR_Integer * mercury__io__param_2);

#line 623 "io.m"
void MR_CALL 
mercury__io__get_line_number_3_p_0(
#line 623 "io.m"
  MR_Integer * mercury__io__param_1);

#line 616 "io.m"
void MR_CALL 
mercury__io__input_stream_name_4_p_0(
#line 616 "io.m"
  MR_Word mercury__io__param_1,
#line 616 "io.m"
  MR_String * mercury__io__param_2);

#line 610 "io.m"
void MR_CALL 
mercury__io__input_stream_name_3_p_0(
#line 610 "io.m"
  MR_String * mercury__io__param_1);

#line 604 "io.m"
void MR_CALL 
mercury__io__stdin_stream_3_p_0(
#line 604 "io.m"
  MR_Word * mercury__io__param_1);

#line 599 "io.m"
MR_Word MR_CALL 
mercury__io__stdin_stream_0_f_0(void);

#line 594 "io.m"
void MR_CALL 
mercury__io__set_input_stream_4_p_0(
#line 594 "io.m"
  MR_Word mercury__io__param_1,
#line 594 "io.m"
  MR_Word * mercury__io__param_2);

#line 588 "io.m"
void MR_CALL 
mercury__io__input_stream_3_p_0(
#line 588 "io.m"
  MR_Word * mercury__io__param_1);

#line 583 "io.m"
void MR_CALL 
mercury__io__close_input_3_p_0(
#line 583 "io.m"
  MR_Word mercury__io__param_1);

#line 577 "io.m"
void MR_CALL 
mercury__io__open_input_4_p_0(
#line 577 "io.m"
  MR_String mercury__io__param_1,
#line 577 "io.m"
  MR_Word * mercury__io__param_2);

#line 572 "io.m"
void MR_CALL 
mercury__io__seen_2_p_0(void);

#line 566 "io.m"
void MR_CALL 
mercury__io__see_4_p_0(
#line 566 "io.m"
  MR_String mercury__io__param_1,
#line 566 "io.m"
  MR_Word * mercury__io__param_2);

#line 554 "io.m"
void MR_CALL 
mercury__io__flush_output_3_p_0(
#line 554 "io.m"
  MR_Word mercury__io__param_1);

#line 550 "io.m"
void MR_CALL 
mercury__io__flush_output_2_p_0(void);

#line 545 "io.m"
void MR_CALL 
mercury__io__write_list_6_p_1(
#line 545 "io.m"
  MR_Word mercury__io__param_1,
#line 545 "io.m"
  MR_Word mercury__io__param_2,
#line 545 "io.m"
  MR_Word mercury__io__param_3,
#line 545 "io.m"
  MR_String mercury__io__param_4,
#line 545 "io.m"
  MR_Word mercury__io__param_5);

#line 544 "io.m"
void MR_CALL 
mercury__io__write_list_6_p_0(
#line 544 "io.m"
  MR_Word mercury__io__param_1,
#line 544 "io.m"
  MR_Word mercury__io__param_2,
#line 544 "io.m"
  MR_Word mercury__io__param_3,
#line 544 "io.m"
  MR_String mercury__io__param_4,
#line 544 "io.m"
  MR_Word mercury__io__param_5);

#line 535 "io.m"
void MR_CALL 
mercury__io__write_list_5_p_1(
#line 535 "io.m"
  MR_Word mercury__io__param_1,
#line 535 "io.m"
  MR_Word mercury__io__param_2,
#line 535 "io.m"
  MR_String mercury__io__param_3,
#line 535 "io.m"
  MR_Word mercury__io__param_4);

#line 534 "io.m"
void MR_CALL 
mercury__io__write_list_5_p_0(
#line 534 "io.m"
  MR_Word mercury__io__param_1,
#line 534 "io.m"
  MR_Word mercury__io__param_2,
#line 534 "io.m"
  MR_String mercury__io__param_3,
#line 534 "io.m"
  MR_Word mercury__io__param_4);

#line 526 "io.m"
void MR_CALL 
mercury__io__write_many_4_p_0(
#line 526 "io.m"
  MR_Word mercury__io__param_1,
#line 526 "io.m"
  MR_Word mercury__io__param_2);

#line 522 "io.m"
void MR_CALL 
mercury__io__write_many_3_p_0(
#line 522 "io.m"
  MR_Word mercury__io__param_1);

#line 517 "io.m"
void MR_CALL 
mercury__io__format_5_p_0(
#line 517 "io.m"
  MR_Word mercury__io__param_1,
#line 517 "io.m"
  MR_String mercury__io__param_2,
#line 517 "io.m"
  MR_Word mercury__io__param_3);

#line 511 "io.m"
void MR_CALL 
mercury__io__format_4_p_0(
#line 511 "io.m"
  MR_String mercury__io__param_1,
#line 511 "io.m"
  MR_Word mercury__io__param_2);

#line 504 "io.m"
void MR_CALL 
mercury__io__write_float_4_p_0(
#line 504 "io.m"
  MR_Word mercury__io__param_1,
#line 504 "io.m"
  MR_Float mercury__io__param_2);

#line 500 "io.m"
void MR_CALL 
mercury__io__write_float_3_p_0(
#line 500 "io.m"
  MR_Float mercury__io__param_1);

#line 496 "io.m"
void MR_CALL 
mercury__io__write_int_4_p_0(
#line 496 "io.m"
  MR_Word mercury__io__param_1,
#line 496 "io.m"
  MR_Integer mercury__io__param_2);

#line 492 "io.m"
void MR_CALL 
mercury__io__write_int_3_p_0(
#line 492 "io.m"
  MR_Integer mercury__io__param_1);

#line 488 "io.m"
void MR_CALL 
mercury__io__write_char_4_p_0(
#line 488 "io.m"
  MR_Word mercury__io__param_1,
#line 488 "io.m"
  MR_Char mercury__io__param_2);

#line 484 "io.m"
void MR_CALL 
mercury__io__write_char_3_p_0(
#line 484 "io.m"
  MR_Char mercury__io__param_1);

#line 479 "io.m"
void MR_CALL 
mercury__io__write_strings_4_p_0(
#line 479 "io.m"
  MR_Word mercury__io__param_1,
#line 479 "io.m"
  MR_Word mercury__io__param_2);

#line 475 "io.m"
void MR_CALL 
mercury__io__write_strings_3_p_0(
#line 475 "io.m"
  MR_Word mercury__io__param_1);

#line 470 "io.m"
void MR_CALL 
mercury__io__write_string_4_p_0(
#line 470 "io.m"
  MR_Word mercury__io__param_1,
#line 470 "io.m"
  MR_String mercury__io__param_2);

#line 466 "io.m"
void MR_CALL 
mercury__io__write_string_3_p_0(
#line 466 "io.m"
  MR_String mercury__io__param_1);

#line 462 "io.m"
void MR_CALL 
mercury__io__nl_3_p_0(
#line 462 "io.m"
  MR_Word mercury__io__param_1);

#line 458 "io.m"
void MR_CALL 
mercury__io__nl_2_p_0(void);

#line 454 "io.m"
void MR_CALL 
mercury__io__write_cc_3_p_0(
#line 454 "io.m"
  MR_Word mercury__io__param_1,
#line 454 "io.m"
  MR_Box mercury__io__param_2);

#line 452 "io.m"
void MR_CALL 
mercury__io__write_5_p_3(
#line 452 "io.m"
  MR_Word mercury__io__param_1,
#line 452 "io.m"
  MR_Word mercury__io__param_2,
#line 452 "io.m"
  MR_Word mercury__io__param_3,
#line 452 "io.m"
  MR_Box mercury__io__param_4);

#line 451 "io.m"
void MR_CALL 
mercury__io__write_5_p_2(
#line 451 "io.m"
  MR_Word mercury__io__param_1,
#line 451 "io.m"
  MR_Word mercury__io__param_2,
#line 451 "io.m"
  MR_Word mercury__io__param_3,
#line 451 "io.m"
  MR_Box mercury__io__param_4);

#line 450 "io.m"
void MR_CALL 
mercury__io__write_5_p_1(
#line 450 "io.m"
  MR_Word mercury__io__param_1,
#line 450 "io.m"
  MR_Word mercury__io__param_2,
#line 450 "io.m"
  MR_Word mercury__io__param_3,
#line 450 "io.m"
  MR_Box mercury__io__param_4);

#line 449 "io.m"
void MR_CALL 
mercury__io__write_5_p_0(
#line 449 "io.m"
  MR_Word mercury__io__param_1,
#line 449 "io.m"
  MR_Word mercury__io__param_2,
#line 449 "io.m"
  MR_Word mercury__io__param_3,
#line 449 "io.m"
  MR_Box mercury__io__param_4);

#line 446 "io.m"
void MR_CALL 
mercury__io__write_4_p_0(
#line 446 "io.m"
  MR_Word mercury__io__param_1,
#line 446 "io.m"
  MR_Word mercury__io__param_2,
#line 446 "io.m"
  MR_Box mercury__io__param_3);

#line 444 "io.m"
void MR_CALL 
mercury__io__write_3_p_0(
#line 444 "io.m"
  MR_Word mercury__io__param_1,
#line 444 "io.m"
  MR_Box mercury__io__param_2);

#line 420 "io.m"
void MR_CALL 
mercury__io__print_cc_3_p_0(
#line 420 "io.m"
  MR_Word mercury__io__param_1,
#line 420 "io.m"
  MR_Box mercury__io__param_2);

#line 418 "io.m"
void MR_CALL 
mercury__io__print_5_p_3(
#line 418 "io.m"
  MR_Word mercury__io__param_1,
#line 418 "io.m"
  MR_Word mercury__io__param_2,
#line 418 "io.m"
  MR_Word mercury__io__param_3,
#line 418 "io.m"
  MR_Box mercury__io__param_4);

#line 417 "io.m"
void MR_CALL 
mercury__io__print_5_p_2(
#line 417 "io.m"
  MR_Word mercury__io__param_1,
#line 417 "io.m"
  MR_Word mercury__io__param_2,
#line 417 "io.m"
  MR_Word mercury__io__param_3,
#line 417 "io.m"
  MR_Box mercury__io__param_4);

#line 416 "io.m"
void MR_CALL 
mercury__io__print_5_p_1(
#line 416 "io.m"
  MR_Word mercury__io__param_1,
#line 416 "io.m"
  MR_Word mercury__io__param_2,
#line 416 "io.m"
  MR_Word mercury__io__param_3,
#line 416 "io.m"
  MR_Box mercury__io__param_4);

#line 415 "io.m"
void MR_CALL 
mercury__io__print_5_p_0(
#line 415 "io.m"
  MR_Word mercury__io__param_1,
#line 415 "io.m"
  MR_Word mercury__io__param_2,
#line 415 "io.m"
  MR_Word mercury__io__param_3,
#line 415 "io.m"
  MR_Box mercury__io__param_4);

#line 412 "io.m"
void MR_CALL 
mercury__io__print_4_p_0(
#line 412 "io.m"
  MR_Word mercury__io__param_1,
#line 412 "io.m"
  MR_Word mercury__io__param_2,
#line 412 "io.m"
  MR_Box mercury__io__param_3);

#line 410 "io.m"
void MR_CALL 
mercury__io__print_3_p_0(
#line 410 "io.m"
  MR_Word mercury__io__param_1,
#line 410 "io.m"
  MR_Box mercury__io__param_2);

#line 374 "io.m"
void MR_CALL 
mercury__io__ignore_whitespace_4_p_0(
#line 374 "io.m"
  MR_Word mercury__io__param_1,
#line 374 "io.m"
  MR_Word * mercury__io__param_2);

#line 370 "io.m"
void MR_CALL 
mercury__io__ignore_whitespace_3_p_0(
#line 370 "io.m"
  MR_Word * mercury__io__param_1);

#line 365 "io.m"
void MR_CALL 
mercury__io__read_from_string_6_p_0(
#line 365 "io.m"
  MR_Word mercury__io__param_1,
#line 365 "io.m"
  MR_String mercury__io__param_2,
#line 365 "io.m"
  MR_String mercury__io__param_3,
#line 365 "io.m"
  MR_Integer mercury__io__param_4,
#line 365 "io.m"
  MR_Word * mercury__io__param_5,
#line 365 "io.m"
  MR_Word mercury__io__param_6,
#line 365 "io.m"
  MR_Word * mercury__io__param_7);

#line 342 "io.m"
void MR_CALL 
mercury__io__read_4_p_0(
#line 342 "io.m"
  MR_Word mercury__io__param_1,
#line 342 "io.m"
  MR_Word mercury__io__param_2,
#line 342 "io.m"
  MR_Word * mercury__io__param_3);

#line 341 "io.m"
void MR_CALL 
mercury__io__read_3_p_0(
#line 341 "io.m"
  MR_Word mercury__io__param_1,
#line 341 "io.m"
  MR_Word * mercury__io__param_2);

#line 321 "io.m"
void MR_CALL 
mercury__io__putback_char_4_p_0(
#line 321 "io.m"
  MR_Word mercury__io__param_1,
#line 321 "io.m"
  MR_Char mercury__io__param_2);

#line 310 "io.m"
void MR_CALL 
mercury__io__input_stream_foldl2_io_maybe_stop_6_p_1(
#line 310 "io.m"
  MR_Word mercury__io__param_1,
#line 310 "io.m"
  MR_Word mercury__io__param_2,
#line 310 "io.m"
  MR_Word mercury__io__param_3,
#line 310 "io.m"
  MR_Box mercury__io__param_4,
#line 310 "io.m"
  MR_Word * mercury__io__param_5);

#line 307 "io.m"
void MR_CALL 
mercury__io__input_stream_foldl2_io_maybe_stop_6_p_0(
#line 307 "io.m"
  MR_Word mercury__io__param_1,
#line 307 "io.m"
  MR_Word mercury__io__param_2,
#line 307 "io.m"
  MR_Word mercury__io__param_3,
#line 307 "io.m"
  MR_Box mercury__io__param_4,
#line 307 "io.m"
  MR_Word * mercury__io__param_5);

#line 296 "io.m"
void MR_CALL 
mercury__io__input_stream_foldl2_io_6_p_1(
#line 296 "io.m"
  MR_Word mercury__io__param_1,
#line 296 "io.m"
  MR_Word mercury__io__param_2,
#line 296 "io.m"
  MR_Word mercury__io__param_3,
#line 296 "io.m"
  MR_Box mercury__io__param_4,
#line 296 "io.m"
  MR_Word * mercury__io__param_5);

#line 293 "io.m"
void MR_CALL 
mercury__io__input_stream_foldl2_io_6_p_0(
#line 293 "io.m"
  MR_Word mercury__io__param_1,
#line 293 "io.m"
  MR_Word mercury__io__param_2,
#line 293 "io.m"
  MR_Word mercury__io__param_3,
#line 293 "io.m"
  MR_Box mercury__io__param_4,
#line 293 "io.m"
  MR_Word * mercury__io__param_5);

#line 284 "io.m"
void MR_CALL 
mercury__io__input_stream_foldl_io_5_p_1(
#line 284 "io.m"
  MR_Word mercury__io__param_1,
#line 284 "io.m"
  MR_Word mercury__io__param_2,
#line 284 "io.m"
  MR_Word * mercury__io__param_3);

#line 282 "io.m"
void MR_CALL 
mercury__io__input_stream_foldl_io_5_p_0(
#line 282 "io.m"
  MR_Word mercury__io__param_1,
#line 282 "io.m"
  MR_Word mercury__io__param_2,
#line 282 "io.m"
  MR_Word * mercury__io__param_3);

#line 274 "io.m"
void MR_CALL 
mercury__io__input_stream_foldl_6_p_1(
#line 274 "io.m"
  MR_Word mercury__io__param_1,
#line 274 "io.m"
  MR_Word mercury__io__param_2,
#line 274 "io.m"
  MR_Word mercury__io__param_3,
#line 274 "io.m"
  MR_Box mercury__io__param_4,
#line 274 "io.m"
  MR_Word * mercury__io__param_5);

#line 272 "io.m"
void MR_CALL 
mercury__io__input_stream_foldl_6_p_0(
#line 272 "io.m"
  MR_Word mercury__io__param_1,
#line 272 "io.m"
  MR_Word mercury__io__param_2,
#line 272 "io.m"
  MR_Word mercury__io__param_3,
#line 272 "io.m"
  MR_Box mercury__io__param_4,
#line 272 "io.m"
  MR_Word * mercury__io__param_5);

#line 264 "io.m"
void MR_CALL 
mercury__io__read_file_as_string_4_p_0(
#line 264 "io.m"
  MR_Word mercury__io__param_1,
#line 264 "io.m"
  MR_Word * mercury__io__param_2);

#line 255 "io.m"
void MR_CALL 
mercury__io__read_file_4_p_0(
#line 255 "io.m"
  MR_Word mercury__io__param_1,
#line 255 "io.m"
  MR_Word * mercury__io__param_2);

#line 249 "io.m"
void MR_CALL 
mercury__io__read_line_as_string_4_p_0(
#line 249 "io.m"
  MR_Word mercury__io__param_1,
#line 249 "io.m"
  MR_Word * mercury__io__param_2);

#line 242 "io.m"
void MR_CALL 
mercury__io__read_line_4_p_0(
#line 242 "io.m"
  MR_Word mercury__io__param_1,
#line 242 "io.m"
  MR_Word * mercury__io__param_2);

#line 236 "io.m"
void MR_CALL 
mercury__io__read_word_4_p_0(
#line 236 "io.m"
  MR_Word mercury__io__param_1,
#line 236 "io.m"
  MR_Word * mercury__io__param_2);

#line 231 "io.m"
void MR_CALL 
mercury__io__read_char_unboxed_5_p_0(
#line 231 "io.m"
  MR_Word mercury__io__param_1,
#line 231 "io.m"
  MR_Word * mercury__io__param_2,
#line 231 "io.m"
  MR_Char * mercury__io__param_3);

#line 225 "io.m"
void MR_CALL 
mercury__io__read_char_4_p_0(
#line 225 "io.m"
  MR_Word mercury__io__param_1,
#line 225 "io.m"
  MR_Word * mercury__io__param_2);

#line 221 "io.m"
void MR_CALL 
mercury__io__putback_char_3_p_0(
#line 221 "io.m"
  MR_Char mercury__io__param_1);

#line 210 "io.m"
void MR_CALL 
mercury__io__input_stream_foldl2_io_maybe_stop_5_p_1(
#line 210 "io.m"
  MR_Word mercury__io__param_1,
#line 210 "io.m"
  MR_Word mercury__io__param_2,
#line 210 "io.m"
  MR_Box mercury__io__param_3,
#line 210 "io.m"
  MR_Word * mercury__io__param_4);

#line 207 "io.m"
void MR_CALL 
mercury__io__input_stream_foldl2_io_maybe_stop_5_p_0(
#line 207 "io.m"
  MR_Word mercury__io__param_1,
#line 207 "io.m"
  MR_Word mercury__io__param_2,
#line 207 "io.m"
  MR_Box mercury__io__param_3,
#line 207 "io.m"
  MR_Word * mercury__io__param_4);

#line 197 "io.m"
void MR_CALL 
mercury__io__input_stream_foldl2_io_5_p_1(
#line 197 "io.m"
  MR_Word mercury__io__param_1,
#line 197 "io.m"
  MR_Word mercury__io__param_2,
#line 197 "io.m"
  MR_Box mercury__io__param_3,
#line 197 "io.m"
  MR_Word * mercury__io__param_4);

#line 195 "io.m"
void MR_CALL 
mercury__io__input_stream_foldl2_io_5_p_0(
#line 195 "io.m"
  MR_Word mercury__io__param_1,
#line 195 "io.m"
  MR_Word mercury__io__param_2,
#line 195 "io.m"
  MR_Box mercury__io__param_3,
#line 195 "io.m"
  MR_Word * mercury__io__param_4);

#line 187 "io.m"
void MR_CALL 
mercury__io__input_stream_foldl_io_4_p_1(
#line 187 "io.m"
  MR_Word mercury__io__param_1,
#line 187 "io.m"
  MR_Word * mercury__io__param_2);

#line 185 "io.m"
void MR_CALL 
mercury__io__input_stream_foldl_io_4_p_0(
#line 185 "io.m"
  MR_Word mercury__io__param_1,
#line 185 "io.m"
  MR_Word * mercury__io__param_2);

#line 178 "io.m"
void MR_CALL 
mercury__io__input_stream_foldl_5_p_1(
#line 178 "io.m"
  MR_Word mercury__io__param_1,
#line 178 "io.m"
  MR_Word mercury__io__param_2,
#line 178 "io.m"
  MR_Box mercury__io__param_3,
#line 178 "io.m"
  MR_Word * mercury__io__param_4);

#line 176 "io.m"
void MR_CALL 
mercury__io__input_stream_foldl_5_p_0(
#line 176 "io.m"
  MR_Word mercury__io__param_1,
#line 176 "io.m"
  MR_Word mercury__io__param_2,
#line 176 "io.m"
  MR_Box mercury__io__param_3,
#line 176 "io.m"
  MR_Word * mercury__io__param_4);

#line 168 "io.m"
void MR_CALL 
mercury__io__read_file_as_string_3_p_0(
#line 168 "io.m"
  MR_Word * mercury__io__param_1);

#line 158 "io.m"
void MR_CALL 
mercury__io__read_file_3_p_0(
#line 158 "io.m"
  MR_Word * mercury__io__param_1);

#line 153 "io.m"
void MR_CALL 
mercury__io__read_line_as_string_3_p_0(
#line 153 "io.m"
  MR_Word * mercury__io__param_1);

#line 147 "io.m"
void MR_CALL 
mercury__io__read_line_3_p_0(
#line 147 "io.m"
  MR_Word * mercury__io__param_1);

#line 142 "io.m"
void MR_CALL 
mercury__io__read_word_3_p_0(
#line 142 "io.m"
  MR_Word * mercury__io__param_1);

#line 138 "io.m"
void MR_CALL 
mercury__io__read_char_3_p_0(
#line 138 "io.m"
  MR_Word * mercury__io__param_1);

void mercury__io__init(void);
void mercury__io__init_type_tables(void);
void mercury__io__init_debugger(void);

#ifdef __cplusplus
}
#endif

#endif /* MR_HEADER_GUARD_io */

/* :- end_interface io. */
