/*----------------------------------------------------------------
 *   FILE
 *	fmgrtab.c
 *
 *   DESCRIPTION
 *	The function manager's table of internal functions.
 *
 *   NOTES
 *
 *	******************************
 *	*** DO NOT EDIT THIS FILE! ***
 *	******************************
 *
 *	It has been GENERATED by /usr/local/src/postgres/src/backend/utils/Gen_fmgrtab.sh
 *	from /usr/local/src/postgres/src/backend/catalog/pg_proc.h
 *
 *	We lie here to cc about the return type and arguments of the
 *	builtin functions; all ld cares about is the fact that it
 *	will need to resolve an external function reference.
 *
 *   IDENTIFICATION
 *	$Header: /data/01/postgres/src/backend/utils/RCS/Gen_fmgrtab.sh,v 1.4 1993/06/15 19:35:31 aoki Exp $
 *----------------------------------------------------------------
 */

#include <values.h>		/* for MAXINT */

#include "utils/fmgrtab.h"

RcsId("$Header: /data/01/postgres/src/backend/utils/RCS/Gen_fmgrtab.sh,v 1.4 1993/06/15 19:35:31 aoki Exp $");

extern char *boolin();
extern char *boolout();
extern char *byteain();
extern char *byteaout();
extern char *charin();
extern char *charout();
extern char *char16in();
extern char *char16out();
extern char *dtin();
extern char *dtout();
extern char *int2in();
extern char *int2out();
extern char *int28in();
extern char *int28out();
extern char *int4in();
extern char *int4out();
extern char *regprocin();
extern char *regprocout();
extern char *textin();
extern char *textout();
extern char *tidin();
extern char *tidout();
extern char *xidin();
extern char *xidout();
extern char *cidin();
extern char *cidout();
extern char *oid8in();
extern char *oid8out();
extern char *lockin();
extern char *lockout();
extern char *stubin();
extern char *stubout();
extern char *booleq();
extern char *chareq();
extern char *char16eq();
extern char *int2eq();
extern char *int2lt();
extern char *int4eq();
extern char *int4lt();
extern char *texteq();
extern char *xideq();
extern char *cideq();
extern char *charne();
extern char *charlt();
extern char *charle();
extern char *chargt();
extern char *charge();
extern char *charpl();
extern char *charmi();
extern char *charmul();
extern char *chardiv();
extern char *char16regexeq();
extern char *char16regexne();
extern char *textregexeq();
extern char *textregexne();
extern char *boolne();
extern char *rtsel();
extern char *rtnpage();
extern char *btreesel();
extern char *btreenpage();
extern char *eqsel();
extern char *neqsel();
extern char *intltsel();
extern char *intgtsel();
extern char *eqjoinsel();
extern char *neqjoinsel();
extern char *intltjoinsel();
extern char *intgtjoinsel();
extern char *point_in();
extern char *point_out();
extern char *lseg_in();
extern char *lseg_out();
extern char *path_in();
extern char *path_out();
extern char *box_in();
extern char *box_out();
extern char *box_overlap();
extern char *box_ge();
extern char *box_gt();
extern char *box_eq();
extern char *box_lt();
extern char *box_le();
extern char *point_above();
extern char *point_left();
extern char *point_right();
extern char *point_below();
extern char *point_eq();
extern char *on_pb();
extern char *on_ppath();
extern char *box_center();
extern char *areasel();
extern char *areajoinsel();
extern char *int4mul();
extern char *int4fac();
extern char *pointdist();
extern char *int4ne();
extern char *int2ne();
extern char *int2gt();
extern char *int4gt();
extern char *int2le();
extern char *int4le();
extern char *int4ge();
extern char *int2ge();
extern char *int2mul();
extern char *int2div();
extern char *int4div();
extern char *int2mod();
extern char *int4mod();
extern char *textne();
extern char *int24eq();
extern char *int42eq();
extern char *int24lt();
extern char *int42lt();
extern char *int24gt();
extern char *int42gt();
extern char *int24ne();
extern char *int42ne();
extern char *int24le();
extern char *int42le();
extern char *int24ge();
extern char *int42ge();
extern char *int24mul();
extern char *int42mul();
extern char *int24div();
extern char *int42div();
extern char *int24mod();
extern char *int42mod();
extern char *int2pl();
extern char *int4pl();
extern char *int24pl();
extern char *int42pl();
extern char *int2mi();
extern char *int4mi();
extern char *int24mi();
extern char *int42mi();
extern char *oideq();
extern char *oidne();
extern char *box_same();
extern char *box_contain();
extern char *box_left();
extern char *box_overleft();
extern char *box_overright();
extern char *box_right();
extern char *box_contained();
extern char *rt_box_union();
extern char *rt_box_inter();
extern char *rt_box_size();
extern char *rt_bigbox_size();
extern char *rt_poly_union();
extern char *rt_poly_inter();
extern char *rt_poly_size();
extern char *float4in();
extern char *float4out();
extern char *float4mul();
extern char *float4div();
extern char *float4pl();
extern char *float4mi();
extern char *float4um();
extern char *float4abs();
extern char *float4inc();
extern char *float4larger();
extern char *float4smaller();
extern char *int4um();
extern char *int2um();
extern char *float8in();
extern char *float8out();
extern char *float8mul();
extern char *float8div();
extern char *float8pl();
extern char *float8mi();
extern char *float8um();
extern char *float8abs();
extern char *float8inc();
extern char *float8larger();
extern char *float8smaller();
extern char *dround();
extern char *dtrunc();
extern char *dsqrt();
extern char *dcbrt();
extern char *dpow();
extern char *dexp();
extern char *dlog1();
extern char *nabstimein();
extern char *nabstimeout();
extern char *reltimein();
extern char *reltimeout();
extern char *timepl();
extern char *timemi();
extern char *tintervalin();
extern char *tintervalout();
extern char *ininterval();
extern char *intervalrel();
extern char *timenow();
extern char *abstimeeq();
extern char *abstimene();
extern char *abstimelt();
extern char *abstimegt();
extern char *abstimele();
extern char *abstimege();
extern char *reltimeeq();
extern char *reltimene();
extern char *reltimelt();
extern char *reltimegt();
extern char *reltimele();
extern char *reltimege();
extern char *intervaleq();
extern char *intervalct();
extern char *intervalov();
extern char *intervalleneq();
extern char *intervallenne();
extern char *intervallenlt();
extern char *intervallengt();
extern char *intervallenle();
extern char *intervallenge();
extern char *intervalstart();
extern char *intervalend();
extern char *int2fac();
extern char *float48mul();
extern char *float48div();
extern char *float48pl();
extern char *float48mi();
extern char *float84mul();
extern char *float84div();
extern char *float84pl();
extern char *float84mi();
extern char *float4eq();
extern char *float4ne();
extern char *float4lt();
extern char *float4le();
extern char *float4gt();
extern char *float4ge();
extern char *float8eq();
extern char *float8ne();
extern char *float8lt();
extern char *float8le();
extern char *float8gt();
extern char *float8ge();
extern char *float48eq();
extern char *float48ne();
extern char *float48lt();
extern char *float48le();
extern char *float48gt();
extern char *float48ge();
extern char *float84eq();
extern char *float84ne();
extern char *float84lt();
extern char *float84le();
extern char *float84gt();
extern char *float84ge();
extern char *ftod();
extern char *dtof();
extern char *i2toi4();
extern char *i4toi2();
extern char *keyfirsteq();
extern char *rtinsert();
extern char *rtdelete();
extern char *rtgettuple();
extern char *rtbuild();
extern char *rtbeginscan();
extern char *rtendscan();
extern char *rtmarkpos();
extern char *rtrestrpos();
extern char *rtrescan();
extern char *btgettuple();
extern char *btinsert();
extern char *btdelete();
extern char *btbeginscan();
extern char *btrescan();
extern char *btendscan();
extern char *btmarkpos();
extern char *btrestrpos();
extern char *btbuild();
extern char *poly_same();
extern char *poly_contain();
extern char *poly_left();
extern char *poly_overleft();
extern char *poly_overright();
extern char *poly_right();
extern char *poly_contained();
extern char *poly_overlap();
extern char *poly_in();
extern char *poly_out();
extern char *btint2cmp();
extern char *btint4cmp();
extern char *btint42cmp();
extern char *btint24cmp();
extern char *btfloat4cmp();
extern char *btfloat8cmp();
extern char *btoidcmp();
extern char *btabstimecmp();
extern char *btcharcmp();
extern char *btchar16cmp();
extern char *bttextcmp();
extern char *lseg_distance();
extern char *lseg_interpt();
extern char *dist_ps();
extern char *dist_pb();
extern char *dist_sb();
extern char *close_ps();
extern char *close_pb();
extern char *close_sb();
extern char *on_ps();
extern char *path_distance();
extern char *dist_ppth();
extern char *on_sb();
extern char *inter_sb();
extern char *att_by_name();
extern char *int4notin();
extern char *oidnotin();
extern char *int44in();
extern char *int44out();
extern char *att_by_num();
extern char *char16lt();
extern char *char16le();
extern char *char16gt();
extern char *char16ge();
extern char *char16ne();
extern char *mktinterval();
extern char *oid8eq();
extern char *GetUserName();
extern char *userfntest();
extern char *byteaGetSize();
extern char *byteaGetByte();
extern char *byteaSetByte();
extern char *byteaGetBit();
extern char *byteaSetBit();
extern char *pqtest();
extern char *text_lt();
extern char *text_le();
extern char *text_gt();
extern char *text_ge();
extern char *array_assgn();
extern char *array_clip();
extern char *array_dims();
extern char *array_set();
extern char *array_ref();
extern char *array_in();
extern char *array_out();
extern char *filename_in();
extern char *filename_out();
extern char *smgrin();
extern char *smgrout();
extern char *smgreq();
extern char *smgrne();
extern char *lo_filein();
extern char *lo_fileout();
extern char *int4inc();
extern char *int2inc();
extern char *int4larger();
extern char *int4smaller();
extern char *int2larger();
extern char *int2smaller();
extern char *oidint2in();
extern char *oidint2out();
extern char *oidint2lt();
extern char *oidint2le();
extern char *oidint2eq();
extern char *oidint2ge();
extern char *oidint2gt();
extern char *oidint2ne();
extern char *oidint2cmp();
extern char *mkoidint2();
extern char *fimport();
extern char *fexport();
extern char *fabstract();
extern char *oidint4in();
extern char *oidint4out();
extern char *oidint4lt();
extern char *oidint4le();
extern char *oidint4eq();
extern char *oidint4ge();
extern char *oidint4gt();
extern char *oidint4ne();
extern char *oidint4cmp();
extern char *mkoidint4();
extern char *oidchar16in();
extern char *oidchar16out();
extern char *oidchar16lt();
extern char *oidchar16le();
extern char *oidchar16eq();
extern char *oidchar16ge();
extern char *oidchar16gt();
extern char *oidchar16ne();
extern char *oidchar16cmp();
extern char *mkoidchar16();
extern char *FilenameToOID();
extern char *LOcreatOID();
extern char *LOopen();
extern char *LOclose();
extern char *LOread();
extern char *LOwrite();
extern char *LOlseek();
extern char *LOcreat();
extern char *LOtell();
extern char *LOftruncate();
extern char *LOstat();
extern char *LOrename();
extern char *LOmkdir();
extern char *LOrmdir();
extern char *LOunlink();
extern char *pftp_read();
extern char *pftp_write();
extern char *RegprocToOid();
extern char *path_inter();
extern char *box_copy();
extern char *box_area();
extern char *box_length();
extern char *box_height();
extern char *box_distance();
extern char *box_intersect();
extern char *box_diagonal();
extern char *path_n_lt();
extern char *path_n_gt();
extern char *path_n_eq();
extern char *path_n_le();
extern char *path_n_ge();
extern char *path_length();
extern char *point_copy();
extern char *point_vert();
extern char *point_horiz();
extern char *point_distance();
extern char *point_slope();
extern char *lseg_construct();
extern char *lseg_intersect();
extern char *lseg_parallel();
extern char *lseg_perp();
extern char *lseg_vertical();
extern char *lseg_horizontal();
extern char *lseg_eq();
extern char *NullValue();
extern char *NonNullValue();
extern char *aclitemin();
extern char *aclitemout();
extern char *aclinsert();
extern char *aclremove();
extern char *aclcontains();

static FmgrCall fmgr_builtins[] = {
	{ 28, 1, boolin },
	{ 29, 1, boolout },
	{ 30, 1, byteain },
	{ 31, 1, byteaout },
	{ 32, 1, charin },
	{ 33, 1, charout },
	{ 34, 1, char16in },
	{ 35, 1, char16out },
	{ 36, 1, dtin },
	{ 37, 1, dtout },
	{ 38, 1, int2in },
	{ 39, 1, int2out },
	{ 40, 1, int28in },
	{ 41, 1, int28out },
	{ 42, 1, int4in },
	{ 43, 1, int4out },
	{ 44, 1, regprocin },
	{ 45, 1, regprocout },
	{ 46, 1, textin },
	{ 47, 1, textout },
	{ 48, 1, tidin },
	{ 49, 1, tidout },
	{ 50, 1, xidin },
	{ 51, 1, xidout },
	{ 52, 1, cidin },
	{ 53, 1, cidout },
	{ 54, 1, oid8in },
	{ 55, 1, oid8out },
	{ 56, 1, lockin },
	{ 57, 1, lockout },
	{ 58, 1, stubin },
	{ 59, 1, stubout },
	{ 60, 2, booleq },
	{ 61, 2, chareq },
	{ 62, 2, char16eq },
	{ 63, 2, int2eq },
	{ 64, 2, int2lt },
	{ 65, 2, int4eq },
	{ 66, 2, int4lt },
	{ 67, 2, texteq },
	{ 68, 2, xideq },
	{ 69, 2, cideq },
	{ 70, 2, charne },
	{ 71, 2, charlt },
	{ 72, 2, charle },
	{ 73, 2, chargt },
	{ 74, 2, charge },
	{ 75, 2, charpl },
	{ 76, 2, charmi },
	{ 77, 2, charmul },
	{ 78, 2, chardiv },
	{ 79, 2, char16regexeq },
	{ 80, 2, char16regexne },
	{ 81, 2, textregexeq },
	{ 82, 2, textregexne },
	{ 84, 2, boolne },
	{ 97, 7, rtsel },
	{ 98, 7, rtnpage },
	{ 99, 7, btreesel },
	{ 100, 7, btreenpage },
	{ 101, 5, eqsel },
	{ 102, 5, neqsel },
	{ 103, 5, intltsel },
	{ 104, 5, intgtsel },
	{ 105, 5, eqjoinsel },
	{ 106, 5, neqjoinsel },
	{ 107, 5, intltjoinsel },
	{ 108, 5, intgtjoinsel },
	{ 117, 1, point_in },
	{ 118, 1, point_out },
	{ 119, 1, lseg_in },
	{ 120, 1, lseg_out },
	{ 121, 1, path_in },
	{ 122, 1, path_out },
	{ 123, 1, box_in },
	{ 124, 1, box_out },
	{ 125, 2, box_overlap },
	{ 126, 2, box_ge },
	{ 127, 2, box_gt },
	{ 128, 2, box_eq },
	{ 129, 2, box_lt },
	{ 130, 2, box_le },
	{ 131, 2, point_above },
	{ 132, 2, point_left },
	{ 133, 2, point_right },
	{ 134, 2, point_below },
	{ 135, 2, point_eq },
	{ 136, 2, on_pb },
	{ 137, 2, on_ppath },
	{ 138, 1, box_center },
	{ 139, 5, areasel },
	{ 140, 5, areajoinsel },
	{ 141, 2, int4mul },
	{ 142, 1, int4fac },
	{ 143, 2, pointdist },
	{ 144, 2, int4ne },
	{ 145, 2, int2ne },
	{ 146, 2, int2gt },
	{ 147, 2, int4gt },
	{ 148, 2, int2le },
	{ 149, 2, int4le },
	{ 150, 2, int4ge },
	{ 151, 2, int2ge },
	{ 152, 2, int2mul },
	{ 153, 2, int2div },
	{ 154, 2, int4div },
	{ 155, 2, int2mod },
	{ 156, 2, int4mod },
	{ 157, 2, textne },
	{ 158, 2, int24eq },
	{ 159, 2, int42eq },
	{ 160, 2, int24lt },
	{ 161, 2, int42lt },
	{ 162, 2, int24gt },
	{ 163, 2, int42gt },
	{ 164, 2, int24ne },
	{ 165, 2, int42ne },
	{ 166, 2, int24le },
	{ 167, 2, int42le },
	{ 168, 2, int24ge },
	{ 169, 2, int42ge },
	{ 170, 2, int24mul },
	{ 171, 2, int42mul },
	{ 172, 2, int24div },
	{ 173, 2, int42div },
	{ 174, 2, int24mod },
	{ 175, 2, int42mod },
	{ 176, 2, int2pl },
	{ 177, 2, int4pl },
	{ 178, 2, int24pl },
	{ 179, 2, int42pl },
	{ 180, 2, int2mi },
	{ 181, 2, int4mi },
	{ 182, 2, int24mi },
	{ 183, 2, int42mi },
	{ 184, 2, oideq },
	{ 185, 2, oidne },
	{ 186, 2, box_same },
	{ 187, 2, box_contain },
	{ 188, 2, box_left },
	{ 189, 2, box_overleft },
	{ 190, 2, box_overright },
	{ 191, 2, box_right },
	{ 192, 2, box_contained },
	{ 193, 2, rt_box_union },
	{ 194, 2, rt_box_inter },
	{ 195, 1, rt_box_size },
	{ 196, 1, rt_bigbox_size },
	{ 197, 2, rt_poly_union },
	{ 198, 2, rt_poly_inter },
	{ 199, 1, rt_poly_size },
	{ 200, 1, float4in },
	{ 201, 1, float4out },
	{ 202, 2, float4mul },
	{ 203, 2, float4div },
	{ 204, 2, float4pl },
	{ 205, 2, float4mi },
	{ 206, 1, float4um },
	{ 207, 1, float4abs },
	{ 208, 1, float4inc },
	{ 209, 2, float4larger },
	{ 211, 2, float4smaller },
	{ 212, 1, int4um },
	{ 213, 1, int2um },
	{ 214, 1, float8in },
	{ 215, 1, float8out },
	{ 216, 2, float8mul },
	{ 217, 2, float8div },
	{ 218, 2, float8pl },
	{ 219, 2, float8mi },
	{ 220, 1, float8um },
	{ 221, 1, float8abs },
	{ 222, 1, float8inc },
	{ 223, 2, float8larger },
	{ 224, 2, float8smaller },
	{ 228, 1, dround },
	{ 229, 1, dtrunc },
	{ 230, 1, dsqrt },
	{ 231, 1, dcbrt },
	{ 232, 2, dpow },
	{ 233, 1, dexp },
	{ 234, 1, dlog1 },
	{ 240, 1, nabstimein },
	{ 241, 1, nabstimeout },
	{ 242, 1, reltimein },
	{ 243, 1, reltimeout },
	{ 244, 2, timepl },
	{ 245, 2, timemi },
	{ 246, 1, tintervalin },
	{ 247, 1, tintervalout },
	{ 248, 2, ininterval },
	{ 249, 1, intervalrel },
	{ 250, 0, timenow },
	{ 251, 2, abstimeeq },
	{ 252, 2, abstimene },
	{ 253, 2, abstimelt },
	{ 254, 2, abstimegt },
	{ 255, 2, abstimele },
	{ 256, 2, abstimege },
	{ 257, 2, reltimeeq },
	{ 258, 2, reltimene },
	{ 259, 2, reltimelt },
	{ 260, 2, reltimegt },
	{ 261, 2, reltimele },
	{ 262, 2, reltimege },
	{ 263, 2, intervaleq },
	{ 264, 2, intervalct },
	{ 265, 2, intervalov },
	{ 266, 2, intervalleneq },
	{ 267, 2, intervallenne },
	{ 268, 2, intervallenlt },
	{ 269, 2, intervallengt },
	{ 270, 2, intervallenle },
	{ 271, 2, intervallenge },
	{ 272, 1, intervalstart },
	{ 273, 1, intervalend },
	{ 276, 1, int2fac },
	{ 279, 2, float48mul },
	{ 280, 2, float48div },
	{ 281, 2, float48pl },
	{ 282, 2, float48mi },
	{ 283, 2, float84mul },
	{ 284, 2, float84div },
	{ 285, 2, float84pl },
	{ 286, 2, float84mi },
	{ 287, 2, float4eq },
	{ 288, 2, float4ne },
	{ 289, 2, float4lt },
	{ 290, 2, float4le },
	{ 291, 2, float4gt },
	{ 292, 2, float4ge },
	{ 293, 2, float8eq },
	{ 294, 2, float8ne },
	{ 295, 2, float8lt },
	{ 296, 2, float8le },
	{ 297, 2, float8gt },
	{ 298, 2, float8ge },
	{ 299, 2, float48eq },
	{ 300, 2, float48ne },
	{ 301, 2, float48lt },
	{ 302, 2, float48le },
	{ 303, 2, float48gt },
	{ 304, 2, float48ge },
	{ 305, 2, float84eq },
	{ 306, 2, float84ne },
	{ 307, 2, float84lt },
	{ 308, 2, float84le },
	{ 309, 2, float84gt },
	{ 310, 2, float84ge },
	{ 311, 2, ftod },
	{ 312, 2, dtof },
	{ 313, 2, i2toi4 },
	{ 314, 2, i4toi2 },
	{ 315, 2, keyfirsteq },
	{ 320, 2, rtinsert },
	{ 321, 2, rtdelete },
	{ 322, 2, rtgettuple },
	{ 323, 9, rtbuild },
	{ 324, 4, rtbeginscan },
	{ 325, 1, rtendscan },
	{ 326, 1, rtmarkpos },
	{ 327, 1, rtrestrpos },
	{ 328, 3, rtrescan },
	{ 330, 2, btgettuple },
	{ 331, 2, btinsert },
	{ 332, 2, btdelete },
	{ 333, 4, btbeginscan },
	{ 334, 3, btrescan },
	{ 335, 1, btendscan },
	{ 336, 1, btmarkpos },
	{ 337, 1, btrestrpos },
	{ 338, 9, btbuild },
	{ 339, 2, poly_same },
	{ 340, 2, poly_contain },
	{ 341, 2, poly_left },
	{ 342, 2, poly_overleft },
	{ 343, 2, poly_overright },
	{ 344, 2, poly_right },
	{ 345, 2, poly_contained },
	{ 346, 2, poly_overlap },
	{ 347, 1, poly_in },
	{ 348, 1, poly_out },
	{ 350, 2, btint2cmp },
	{ 351, 2, btint4cmp },
	{ 352, 2, btint42cmp },
	{ 353, 2, btint24cmp },
	{ 354, 2, btfloat4cmp },
	{ 355, 2, btfloat8cmp },
	{ 356, 2, btoidcmp },
	{ 357, 2, btabstimecmp },
	{ 358, 2, btcharcmp },
	{ 359, 2, btchar16cmp },
	{ 360, 2, bttextcmp },
	{ 361, 2, lseg_distance },
	{ 362, 2, lseg_interpt },
	{ 363, 2, dist_ps },
	{ 364, 2, dist_pb },
	{ 365, 2, dist_sb },
	{ 366, 2, close_ps },
	{ 367, 2, close_pb },
	{ 368, 2, close_sb },
	{ 369, 2, on_ps },
	{ 370, 2, path_distance },
	{ 371, 2, dist_ppth },
	{ 372, 2, on_sb },
	{ 373, 2, inter_sb },
	{ 649, 3, att_by_name },
	{ 650, 2, int4notin },
	{ 651, 2, oidnotin },
	{ 652, 1, int44in },
	{ 653, 1, int44out },
	{ 654, 3, att_by_num },
	{ 655, 2, char16lt },
	{ 656, 2, char16le },
	{ 657, 2, char16gt },
	{ 658, 2, char16ge },
	{ 659, 2, char16ne },
	{ 682, 2, mktinterval },
	{ 683, 2, oid8eq },
	{ 710, 0, GetUserName },
	{ 711, 1, userfntest },
	{ 720, 1, byteaGetSize },
	{ 721, 2, byteaGetByte },
	{ 722, 3, byteaSetByte },
	{ 723, 2, byteaGetBit },
	{ 724, 3, byteaSetBit },
	{ 730, 1, pqtest },
	{ 740, 2, text_lt },
	{ 741, 2, text_le },
	{ 742, 2, text_gt },
	{ 743, 2, text_ge },
	{ 745, 8, array_assgn },
	{ 746, 7, array_clip },
	{ 747, 1, array_dims },
	{ 748, 6, array_set },
	{ 749, 6, array_ref },
	{ 750, 2, array_in },
	{ 751, 2, array_out },
	{ 752, 2, filename_in },
	{ 753, 2, filename_out },
	{ 760, 1, smgrin },
	{ 761, 1, smgrout },
	{ 762, 2, smgreq },
	{ 763, 2, smgrne },
	{ 764, 1, lo_filein },
	{ 765, 1, lo_fileout },
	{ 766, 1, int4inc },
	{ 767, 1, int2inc },
	{ 768, 2, int4larger },
	{ 769, 2, int4smaller },
	{ 770, 2, int2larger },
	{ 771, 2, int2smaller },
	{ 820, 1, oidint2in },
	{ 821, 1, oidint2out },
	{ 822, 2, oidint2lt },
	{ 823, 2, oidint2le },
	{ 824, 2, oidint2eq },
	{ 825, 2, oidint2ge },
	{ 826, 2, oidint2gt },
	{ 827, 2, oidint2ne },
	{ 828, 2, oidint2cmp },
	{ 829, 2, mkoidint2 },
	{ 900, 1, fimport },
	{ 901, 2, fexport },
	{ 902, 5, fabstract },
	{ 920, 1, oidint4in },
	{ 921, 1, oidint4out },
	{ 922, 2, oidint4lt },
	{ 923, 2, oidint4le },
	{ 924, 2, oidint4eq },
	{ 925, 2, oidint4ge },
	{ 926, 2, oidint4gt },
	{ 927, 2, oidint4ne },
	{ 928, 2, oidint4cmp },
	{ 929, 2, mkoidint4 },
	{ 940, 1, oidchar16in },
	{ 941, 1, oidchar16out },
	{ 942, 2, oidchar16lt },
	{ 943, 2, oidchar16le },
	{ 944, 2, oidchar16eq },
	{ 945, 2, oidchar16ge },
	{ 946, 2, oidchar16gt },
	{ 947, 2, oidchar16ne },
	{ 948, 2, oidchar16cmp },
	{ 949, 2, mkoidchar16 },
	{ 950, 1, FilenameToOID },
	{ 951, 1, LOcreatOID },
	{ 952, 2, LOopen },
	{ 953, 1, LOclose },
	{ 954, 2, LOread },
	{ 955, 2, LOwrite },
	{ 956, 3, LOlseek },
	{ 957, 3, LOcreat },
	{ 958, 1, LOtell },
	{ 959, 2, LOftruncate },
	{ 960, 1, LOstat },
	{ 961, 2, LOrename },
	{ 962, 2, LOmkdir },
	{ 963, 1, LOrmdir },
	{ 964, 1, LOunlink },
	{ 970, 3, pftp_read },
	{ 971, 2, pftp_write },
	{ 972, 1, RegprocToOid },
	{ 973, 2, path_inter },
	{ 974, 1, box_copy },
	{ 975, 1, box_area },
	{ 976, 1, box_length },
	{ 977, 1, box_height },
	{ 978, 2, box_distance },
	{ 980, 2, box_intersect },
	{ 981, 1, box_diagonal },
	{ 982, 2, path_n_lt },
	{ 983, 2, path_n_gt },
	{ 984, 2, path_n_eq },
	{ 985, 2, path_n_le },
	{ 986, 2, path_n_ge },
	{ 987, 1, path_length },
	{ 988, 1, point_copy },
	{ 989, 2, point_vert },
	{ 990, 2, point_horiz },
	{ 991, 2, point_distance },
	{ 992, 2, point_slope },
	{ 993, 2, lseg_construct },
	{ 994, 2, lseg_intersect },
	{ 995, 2, lseg_parallel },
	{ 996, 2, lseg_perp },
	{ 997, 1, lseg_vertical },
	{ 998, 1, lseg_horizontal },
	{ 999, 2, lseg_eq },
	{ 1029, 1, NullValue },
	{ 1030, 1, NonNullValue },
	{ 1031, 1, aclitemin },
	{ 1032, 1, aclitemout },
	{ 1035, 2, aclinsert },
	{ 1036, 2, aclremove },
	{ 1037, 2, aclcontains },
	/* guardian value */
	{ MAXINT, 0, (func_ptr) NULL }
};

static int fmgr_nbuiltins = (sizeof(fmgr_builtins) / sizeof(FmgrCall)) - 1;

FmgrCall *
fmgr_isbuiltin(id)
	ObjectId	id;
{
	register int	i;
	int		low = 0;
	int		high = fmgr_nbuiltins;

	low = 0;
	high = fmgr_nbuiltins;
	while (low <= high) {
		i = low + (high - low) / 2;
		if (id == fmgr_builtins[i].proid)
			break;
		else if (id > fmgr_builtins[i].proid)
			low = i + 1;
		else
			high = i - 1;
	}
	if (id == fmgr_builtins[i].proid)
		return(&fmgr_builtins[i]);
	return((FmgrCall *) NULL);
}
