/* generated by Id 1.0 at 2007-08-31 06:59:35 Z */
/* with the command: -I../stage1/ -I../st80 -c Parser.st -o ../stage2/Parser.o.c */

#include <stdio.h>
#include <stdlib.h>
#include <stdarg.h>
#include <setjmp.h>
#include <string.h>
#include <ctype.h>
#include <fcntl.h>
#include <unistd.h>
#include <time.h>
#include <sys/time.h>
#include <sys/stat.h>
#include <sys/param.h>
#include <assert.h>
#define GC_DLL 1
#include <gc/gc.h>
#if defined(WIN32)
# include <malloc.h>
# include <windows.h>
  typedef HINSTANCE dlhandle_t;
# define dlopen(path, mode)	LoadLibrary(path)
# define dlsym(handle, name)	((void *)GetProcAddress(handle, name))
# define dlclose(handle)	FreeLibrary(handle)
# include <winbase.h>
  inline int gettimeofday(struct timeval *tp, void *tzp)
  {
     union {
       long long ns100;
       FILETIME ft;
     } _now;
     GetSystemTimeAsFileTime(&_now.ft);
     tp->tv_usec= (long)((_now.ns100 / 10LL) % 1000000LL);
     tp->tv_sec= (long)((_now.ns100 - (116444736000000000LL)) / 10000000LL);
     return 0;
   }
#else
# include <dlfcn.h>
  typedef void *dlhandle_t;
#endif
#ifndef O_BINARY
# define O_BINARY 0
#endif

typedef struct t__object *oop;

typedef oop (*_imp_t)(oop _thunk, oop receiver, ...);

struct __closure
{
  _imp_t method;
  oop	 data;
};

static void              *(*_local_param   )(int index)= 0;
static oop  		  (*_local_intern  )(const char *string)= 0;
static oop  		  (*_local_proto   )(oop base)= 0;
static oop  		  (*_local_import  )(const char *name)= 0;
static oop  		  (*_local_export  )(const char *name, oop value)= 0;
static void 		  (*_local_method  )(oop type, oop selector, _imp_t method)= 0;
static oop  		  (*_local_alloc   )(oop type, size_t size)= 0;
static oop  		 *(*_local_palloc  )(size_t size)= 0;
static void  		 *(*_local_balloc  )(size_t size)= 0;
static struct __closure  *(*_local_bind    )(oop selector, oop receiver)= 0;
static oop                (*_local_nlreturn)(oop nlr, oop result)= 0;
static oop                (*_local_nlresult)(void)= 0;
static oop  		    _local_object= 0;
static oop  		   *_local_tag_vtable= 0;
static oop  		   *_local_nil_vtable= 0;
static void               (*_local_gc_addRoots)(char *lo, char *hi)= 0;
static void	          (*_local_gc_unregisterDisappearingLink)(void *ptr)= 0;
static void		  (*_local_gc_generalRegisterDisappearingLink)(void *link, void *ptr)= 0;
static void		  (*_local_gc_gcollect)(void)= 0;
static void		 *(*_local_enter)(char *name, char *type, char *file)= 0;
static void		  (*_local_line)(int line)= 0;
static void		  (*_local_leave)(void *)= 0;
static char		 *(*_local_backtrace)(void)= 0;

#define _param(INDEX)		_local_param(INDEX)
#define _selector(NAME)		_local_intern(NAME)
#define _proto(BASE)		_local_proto(BASE)
#define _id_import(NAME)	_local_import(NAME)
#define _id_export(NAME, VAL)	_local_export((NAME), (VAL))
#define _method(TYPE, SEL, IMP)	_local_method((TYPE), (SEL), (_imp_t)(IMP))
#define _alloc(RCV, LBS)	_local_alloc((RCV), (LBS))
#define _palloc(LBS)		_local_palloc((LBS))
#define _balloc(LBS)		_local_balloc((LBS))
#define _nlreturn(NLR, ARG)	_local_nlreturn((NLR), (ARG))
#define _nlresult()		_local_nlresult()
#define _backtrace()		_local_backtrace()
#ifdef ID_DEBUG
# define _enter(NM, TYPE, FILE)	void *__id_debug= _local_enter(NM, TYPE, FILE)
# define _line(line)		_local_line(line)
# define _leave()		_local_leave(__id_debug)
#else
# define _enter(NM, TYPE, FILE)
# define _line(line)
# define _leave()
#endif
#define _return			_leave(); return

#define _send(MSG, RCV, ARG...) ({					\
  register oop _r= (RCV);						\
  struct __closure *_c= (struct __closure *)_local_bind((MSG), _r);	\
  (_c->method)((oop)_c, _r, _r, ##ARG);					\
})

#define _super(TYP, MSG, RCV, ARG...) ({				\
  register oop _r= (RCV);						\
  struct __closure *_c= (struct __closure *)_local_bind((MSG), (TYP));	\
  (_c->method)((oop)_c, _r, _r, ##ARG);					\
})

static oop s_and_= 0;
static oop s_isVariableNode= 0;
static oop s_withVariable_value_position_= 0;
static oop s_ifTrue_ifFalse_= 0;
static oop s_addCascade_= 0;
static oop s_notEmpty= 0;
static oop s_isSendNode= 0;
static oop s_parseTemporaries_= 0;
static oop s_addTemporary_= 0;
static oop s_parseSequence_= 0;
static oop s_on_= 0;
static oop s_addStatement_= 0;
static oop s_parsePrimitive= 0;
static oop s_parseBlock= 0;
static oop s_isReturnNode= 0;
static oop s_lastStatement= 0;
static oop s_parseBlockParameters_= 0;
static oop s_resetToStart= 0;
static oop s_parseExtern= 0;
static oop s_beginsWith_= 0;
static oop s_withCode_position_= 0;
static oop s_parseUnary= 0;
static oop s_parsePrototype_= 0;
static oop s_parseArray= 0;
static oop s_withName_base_slots_position_= 0;
static oop s_parseVarParams_= 0;
static oop s_parseMethod_= 0;
static oop s_withType_selector_arguments_position_= 0;
static oop s_second= 0;
static oop s_parseExec= 0;
static oop s_nextPut_= 0;
static oop s_parseDefinition_= 0;
static oop s_withName_exec_position_= 0;
static oop s_parseDeclaration= 0;
static oop s__5fdebugName= 0;
static oop s_note_= 0;
static oop s_new= 0;
static oop s_notNil= 0;
static oop s_external_= 0;
static oop s_internal_= 0;
static oop s_not= 0;
static oop s_whileTrue_= 0;
static oop s_pragma_= 0;
static oop s_include_= 0;
static oop s_error_= 0;
static oop s__7e_7e= 0;
static oop s__5fsizeof= 0;
static oop s_error_at_= 0;
static oop s_tokenized_= 0;
static oop s_new_5f_= 0;
static oop s_value_5f_= 0;
static oop s__5fimport_= 0;
static oop s_import_= 0;
static oop s_ifFalse_= 0;
static oop s_atEnd= 0;
static oop s_parse= 0;
static oop s_ifTrue_= 0;
static oop s__2c= 0;
static oop s_isNil= 0;
static oop s_first= 0;
static oop s__3d_3d= 0;
static oop s_input_= 0;
static oop s_add_= 0;
static oop s__3d= 0;
static oop s_position= 0;
static oop s_beVariadic= 0;
static oop s_parsePrimary= 0;
static oop s_withName_position_= 0;
static oop s_parseExpression= 0;
static oop s_withPosition_= 0;
static oop s_withReceiver_selector_position_= 0;
static oop s_parseBinary= 0;
static oop s_addArgument_= 0;
static oop s_addKeyword_= 0;
static oop s_size_5f_value_5f_= 0;
static oop s_on_notifying_= 0;
static oop s_parseByteArray= 0;
static oop s_whileFalse_= 0;
static oop s_between_and_= 0;
static oop s_fromString_position_= 0;
static oop s_withElements_position_= 0;
static oop s_parseWordArray= 0;
static oop s_parseArrayLiteral= 0;
static oop s_parseLiteralP= 0;
static oop s_or_= 0;
static oop s_scanKeywords= 0;
static oop s_function_5f_arity_5f_outer_state_nlr_5f_= 0;
static oop s_scan= 0;
static oop s_includes_= 0;
static oop s_value= 0;
static oop s_withValue_position_= 0;
static oop s_contents= 0;
static struct _Selector { const char *name; oop *addr; } _Selectors[]= {
  { "and:", &s_and_ },
  { "isVariableNode", &s_isVariableNode },
  { "withVariable:value:position:", &s_withVariable_value_position_ },
  { "ifTrue:ifFalse:", &s_ifTrue_ifFalse_ },
  { "addCascade:", &s_addCascade_ },
  { "notEmpty", &s_notEmpty },
  { "isSendNode", &s_isSendNode },
  { "parseTemporaries:", &s_parseTemporaries_ },
  { "addTemporary:", &s_addTemporary_ },
  { "parseSequence:", &s_parseSequence_ },
  { "on:", &s_on_ },
  { "addStatement:", &s_addStatement_ },
  { "parsePrimitive", &s_parsePrimitive },
  { "parseBlock", &s_parseBlock },
  { "isReturnNode", &s_isReturnNode },
  { "lastStatement", &s_lastStatement },
  { "parseBlockParameters:", &s_parseBlockParameters_ },
  { "resetToStart", &s_resetToStart },
  { "parseExtern", &s_parseExtern },
  { "beginsWith:", &s_beginsWith_ },
  { "withCode:position:", &s_withCode_position_ },
  { "parseUnary", &s_parseUnary },
  { "parsePrototype:", &s_parsePrototype_ },
  { "parseArray", &s_parseArray },
  { "withName:base:slots:position:", &s_withName_base_slots_position_ },
  { "parseVarParams:", &s_parseVarParams_ },
  { "parseMethod:", &s_parseMethod_ },
  { "withType:selector:arguments:position:", &s_withType_selector_arguments_position_ },
  { "second", &s_second },
  { "parseExec", &s_parseExec },
  { "nextPut:", &s_nextPut_ },
  { "parseDefinition:", &s_parseDefinition_ },
  { "withName:exec:position:", &s_withName_exec_position_ },
  { "parseDeclaration", &s_parseDeclaration },
  { "_debugName", &s__5fdebugName },
  { "note:", &s_note_ },
  { "new", &s_new },
  { "notNil", &s_notNil },
  { "external:", &s_external_ },
  { "internal:", &s_internal_ },
  { "not", &s_not },
  { "whileTrue:", &s_whileTrue_ },
  { "pragma:", &s_pragma_ },
  { "include:", &s_include_ },
  { "error:", &s_error_ },
  { "~~", &s__7e_7e },
  { "_sizeof", &s__5fsizeof },
  { "error:at:", &s_error_at_ },
  { "tokenized:", &s_tokenized_ },
  { "new_:", &s_new_5f_ },
  { "value_:", &s_value_5f_ },
  { "_import:", &s__5fimport_ },
  { "import:", &s_import_ },
  { "ifFalse:", &s_ifFalse_ },
  { "atEnd", &s_atEnd },
  { "parse", &s_parse },
  { "ifTrue:", &s_ifTrue_ },
  { ",", &s__2c },
  { "isNil", &s_isNil },
  { "first", &s_first },
  { "==", &s__3d_3d },
  { "input:", &s_input_ },
  { "add:", &s_add_ },
  { "=", &s__3d },
  { "position", &s_position },
  { "beVariadic", &s_beVariadic },
  { "parsePrimary", &s_parsePrimary },
  { "withName:position:", &s_withName_position_ },
  { "parseExpression", &s_parseExpression },
  { "withPosition:", &s_withPosition_ },
  { "withReceiver:selector:position:", &s_withReceiver_selector_position_ },
  { "parseBinary", &s_parseBinary },
  { "addArgument:", &s_addArgument_ },
  { "addKeyword:", &s_addKeyword_ },
  { "size_:value_:", &s_size_5f_value_5f_ },
  { "on:notifying:", &s_on_notifying_ },
  { "parseByteArray", &s_parseByteArray },
  { "whileFalse:", &s_whileFalse_ },
  { "between:and:", &s_between_and_ },
  { "fromString:position:", &s_fromString_position_ },
  { "withElements:position:", &s_withElements_position_ },
  { "parseWordArray", &s_parseWordArray },
  { "parseArrayLiteral", &s_parseArrayLiteral },
  { "parseLiteralP", &s_parseLiteralP },
  { "or:", &s_or_ },
  { "scanKeywords", &s_scanKeywords },
  { "function_:arity_:outer:state:nlr_:", &s_function_5f_arity_5f_outer_state_nlr_5f_ },
  { "scan", &s_scan },
  { "includes:", &s_includes_ },
  { "value", &s_value },
  { "withValue:position:", &s_withValue_position_ },
  { "contents", &s_contents },
  { 0, 0 }
};
struct t__object {
  struct _vtable *_vtable[0];
};
struct t__selector {
  struct _vtable *_vtable[0];
  oop v__size;
  oop v__elements;
};
struct t__assoc {
  struct _vtable *_vtable[0];
  oop v_key;
  oop v_value;
};
struct t__closure {
  struct _vtable *_vtable[0];
  oop v__method;
  oop v_data;
};
struct t__vector {
  struct _vtable *_vtable[0];
  oop v__size;
};
struct t__vtable {
  struct _vtable *_vtable[0];
  oop v__tally;
  oop v_bindings;
  oop v_delegate;
};
struct t_Object {
  struct _vtable *_vtable[0];
};
struct t_UndefinedObject {
  struct _vtable *_vtable[0];
};
struct t_StaticBlockClosure {
  struct _vtable *_vtable[0];
  oop v__function;
  oop v__arity;
};
struct t_BlockClosure {
  struct _vtable *_vtable[0];
  oop v__function;
  oop v__arity;
  oop v_outer;
  oop v_state;
  oop v__nlr;
};
struct t_Magnitude {
  struct _vtable *_vtable[0];
};
struct t_Character {
  struct _vtable *_vtable[0];
  oop v_value;
};
struct t_Number {
  struct _vtable *_vtable[0];
};
struct t_Fraction {
  struct _vtable *_vtable[0];
  oop v_numerator;
  oop v_denominator;
};
struct t_Float {
  struct _vtable *_vtable[0];
};
struct t_Integer {
  struct _vtable *_vtable[0];
};
struct t_SmallInteger {
  struct _vtable *_vtable[0];
};
struct t_LargePositiveInteger {
  struct _vtable *_vtable[0];
  oop v_bytes;
};
struct t_LargeNegativeInteger {
  struct _vtable *_vtable[0];
  oop v_bytes;
};
struct t_Collection {
  struct _vtable *_vtable[0];
};
struct t_SequenceableCollection {
  struct _vtable *_vtable[0];
};
struct t_ArrayedCollection {
  struct _vtable *_vtable[0];
  oop v_size;
};
struct t_Array {
  struct _vtable *_vtable[0];
  oop v_size;
  oop v__pointers;
};
struct t_ImmutableArray {
  struct _vtable *_vtable[0];
  oop v_size;
  oop v__pointers;
};
struct t_WordArray {
  struct _vtable *_vtable[0];
  oop v_size;
  oop v__words;
};
struct t_ImmutableWordArray {
  struct _vtable *_vtable[0];
  oop v_size;
  oop v__words;
};
struct t_ByteArray {
  struct _vtable *_vtable[0];
  oop v_size;
  oop v__bytes;
};
struct t_ImmutableByteArray {
  struct _vtable *_vtable[0];
  oop v_size;
  oop v__bytes;
};
struct t_String {
  struct _vtable *_vtable[0];
  oop v_size;
  oop v__bytes;
};
struct t_ImmutableString {
  struct _vtable *_vtable[0];
  oop v_size;
  oop v__bytes;
};
struct t_Symbol {
  struct _vtable *_vtable[0];
  oop v_size;
  oop v__bytes;
};
struct t_nil {
  struct _vtable *_vtable[0];
};
struct t_true {
  struct _vtable *_vtable[0];
};
struct t_false {
  struct _vtable *_vtable[0];
};
struct t_CharacterTable {
  struct _vtable *_vtable[0];
  oop v_size;
  oop v__pointers;
};
struct t_Set {
  struct _vtable *_vtable[0];
  oop v_tally;
  oop v_array;
};
struct t_LookupKey {
  struct _vtable *_vtable[0];
  oop v_key;
};
struct t_Association {
  struct _vtable *_vtable[0];
  oop v_key;
  oop v_value;
};
struct t_OrderedCollection {
  struct _vtable *_vtable[0];
  oop v_array;
  oop v_firstIndex;
  oop v_lastIndex;
};
struct t_Dictionary {
  struct _vtable *_vtable[0];
  oop v_tally;
  oop v_array;
};
struct t_IdentitySet {
  struct _vtable *_vtable[0];
  oop v_tally;
  oop v_array;
};
struct t_IdentityDictionary {
  struct _vtable *_vtable[0];
  oop v_tally;
  oop v_array;
};
struct t_Stream {
  struct _vtable *_vtable[0];
};
struct t_PositionableStream {
  struct _vtable *_vtable[0];
  oop v_collection;
  oop v_position;
  oop v_readLimit;
};
struct t_WriteStream {
  struct _vtable *_vtable[0];
  oop v_collection;
  oop v_position;
  oop v_readLimit;
  oop v_writeLimit;
};
struct t_ScannerPosition {
  struct _vtable *_vtable[0];
  oop v_file;
  oop v_line;
};
struct t_SymbolTable {
  struct _vtable *_vtable[0];
  oop v_tally;
  oop v_array;
};
struct t_Scanner {
  struct _vtable *_vtable[0];
  oop v_charTable;
  oop v_charEscapes;
  oop v_context;
  oop v_c;
  oop v_token;
  oop v_type;
  oop v_prevHash;
  oop v_line;
};
struct t_ParseNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
};
struct t_LiteralNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_value;
  oop v_tag;
  oop v_constructor;
};
struct t_ArrayLiteralNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_value;
  oop v_tag;
  oop v_constructor;
};
struct t_ByteArrayNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_value;
  oop v_tag;
  oop v_constructor;
};
struct t_WordArrayNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_value;
  oop v_tag;
  oop v_constructor;
};
struct t_ArrayNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_value;
  oop v_tag;
  oop v_constructor;
};
struct t_SymbolNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_value;
  oop v_tag;
  oop v_constructor;
};
struct t_StringNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_value;
  oop v_tag;
  oop v_constructor;
};
struct t_IntegerNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_value;
  oop v_tag;
  oop v_constructor;
};
struct t_FloatNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_value;
  oop v_tag;
  oop v_constructor;
};
struct t_CharacterNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_value;
  oop v_tag;
  oop v_constructor;
};
struct t_VariableNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_name;
  oop v_variable;
  oop v_level;
};
struct t_VarargNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
};
struct t_SendNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_receiver;
  oop v_selector;
  oop v_arguments;
  oop v_cascades;
  oop v_superedType;
  oop v_specialGenerator;
};
struct t_AssignmentNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_value;
  oop v_variable;
};
struct t_ReturnNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_value;
  oop v_nonLocal;
  oop v_variadic;
};
struct t_LocalReturnNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_value;
  oop v_nonLocal;
  oop v_variadic;
};
struct t_SequenceNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_temporaries;
  oop v_statements;
  oop v_scope;
  oop v_literals;
  oop v_blocks;
};
struct t_BlockNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_temporaries;
  oop v_statements;
  oop v_scope;
  oop v_literals;
  oop v_blocks;
  oop v_arguments;
  oop v_tag;
  oop v_constructor;
  oop v_stateConstructor;
};
struct t_MethodNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_temporaries;
  oop v_statements;
  oop v_scope;
  oop v_literals;
  oop v_blocks;
  oop v_arguments;
  oop v_tag;
  oop v_constructor;
  oop v_stateConstructor;
  oop v_type;
  oop v_selector;
  oop v_sequenceNumber;
  oop v_variadic;
};
struct t_ExecNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_temporaries;
  oop v_statements;
  oop v_scope;
  oop v_literals;
  oop v_blocks;
  oop v_stateConstructor;
};
struct t_IncludeNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_name;
};
struct t_ImportNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_name;
};
struct t_ExternNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_code;
};
struct t_PrimitiveNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_code;
  oop v_mtype;
};
struct t_PrototypeNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_name;
  oop v_base;
  oop v_slots;
  oop v_used;
  oop v_external;
};
struct t_DefinitionNode {
  struct _vtable *_vtable[0];
  oop v_position;
  oop v_location;
  oop v_name;
  oop v_exec;
  oop v_used;
  oop v_external;
};
struct t_SelectorTable {
  struct _vtable *_vtable[0];
  oop v_tally;
  oop v_array;
};
struct t_PerformWithArgumentsSelectors {
  struct _vtable *_vtable[0];
  oop v_size;
  oop v__pointers;
};
struct t_Parser {
  struct _vtable *_vtable[0];
  oop v_charTable;
  oop v_charEscapes;
  oop v_context;
  oop v_c;
  oop v_token;
  oop v_type;
  oop v_prevHash;
  oop v_line;
  oop v_client;
};
static oop l_1= 0;
static oop l_2= 0;
static oop l_3= 0;
static oop l_4= 0;
static oop l_5= 0;
static oop l_6= 0;
static oop l_7= 0;
static oop l_8= 0;
static oop l_9= 0;
static oop l_10= 0;
static oop l_11= 0;
static oop l_12= 0;
static oop l_13= 0;
static oop l_14= 0;
static oop l_15= 0;
static oop l_16= 0;
static oop l_17= 0;
static oop l_18= 0;
static oop l_19= 0;
static oop l_20= 0;
static oop l_21= 0;
static oop l_22= 0;
static oop l_23= 0;
static oop l_24= 0;
static oop l_25= 0;
static oop l_27= 0;
static oop l_29= 0;
static oop l_31= 0;
static oop l_33= 0;
static oop l_34= 0;
static oop l_35= 0;
static oop l_36= 0;
static oop l_37= 0;
static oop l_38= 0;
static oop l_39= 0;
static oop l_41= 0;
static oop l_42= 0;
static oop l_43= 0;
static oop l_44= 0;
static oop l_45= 0;
static oop l_46= 0;
static oop l_47= 0;
static oop l_48= 0;
static oop l_49= 0;
static oop l_50= 0;
static oop l_51= 0;
static oop l_52= 0;
static oop l_53= 0;
static oop l_54= 0;
static oop l_55= 0;
static oop l_56= 0;
static oop l_57= 0;
static oop l_58= 0;
static oop l_59= 0;
static oop l_60= 0;
static oop l_61= 0;
static oop l_62= 0;
static oop l_63= 0;
static oop l_64= 0;
static oop l_65= 0;
static oop l_66= 0;
static oop l_69= 0;
static oop l_70= 0;
static oop l_71= 0;
static oop l_72= 0;
static oop l_73= 0;
static oop l_74= 0;
static oop l_75= 0;
static oop l_76= 0;
static oop l_77= 0;
static oop l_78= 0;
static oop l_79= 0;
static oop l_80= 0;
static oop l_81= 0;
static oop l_82= 0;
static oop l_83= 0;
static oop l_84= 0;
static oop l_85= 0;
static oop l_86= 0;
static oop l_87= 0;
static oop l_88= 0;
static oop l_89= 0;
static oop l_90= 0;
static oop l_91= 0;
static oop l_92= 0;
static oop l_93= 0;
static oop l_94= 0;
static oop l_95= 0;
static oop l_96= 0;
static oop l_97= 0;
static oop l_98= 0;
static oop l_99= 0;
static oop l_100= 0;
static oop l_101= 0;
static oop l_102= 0;
static oop l_103= 0;
static oop l_104= 0;
static oop l_105= 0;
static oop l_106= 0;
static oop l_107= 0;
static oop l_108= 0;
static oop l_109= 0;
static oop l_110= 0;
static oop l_111= 0;
static oop l_112= 0;
static oop l_113= 0;
static oop l_114= 0;
static oop l_115= 0;
static oop l_116= 0;
static oop l_117= 0;
static oop l_118= 0;
static oop l_119= 0;
static oop l_120= 0;
static oop l_121= 0;
static oop l_122= 0;
static oop l_123= 0;
static oop l_124= 0;
static oop l_125= 0;
static oop l_126= 0;
static oop l_127= 0;
static oop l_128= 0;
static oop l_129= 0;
static oop l_130= 0;
static oop l_131= 0;
static oop l_132= 0;
static oop l_133= 0;
static oop l_134= 0;
static oop l_135= 0;
static oop l_136= 0;
static oop l_137= 0;
static oop l_138= 0;
static oop l_139= 0;
static oop l_140= 0;
static oop l_141= 0;
static oop l_142= 0;
static oop l_143= 0;
static oop l_145= 0;
static oop l_146= 0;
static oop l_147= 0;
static oop l_148= 0;
static oop v__object= 0;
static oop v__vector= 0;
static oop v_Object= 0;
static oop v_UndefinedObject= 0;
static oop v_StaticBlockClosure= 0;
static oop v_BlockClosure= 0;
static oop v_Magnitude= 0;
static oop v_Character= 0;
static oop v_Number= 0;
static oop v_Integer= 0;
static oop v_SmallInteger= 0;
static oop v_LargePositiveInteger= 0;
static oop v_Collection= 0;
static oop v_SequenceableCollection= 0;
static oop v_ArrayedCollection= 0;
static oop v_Array= 0;
static oop v_ImmutableArray= 0;
static oop v_WordArray= 0;
static oop v_ByteArray= 0;
static oop v_String= 0;
static oop v_ImmutableString= 0;
static oop v_Symbol= 0;
static oop v_nil= 0;
static oop v_true= 0;
static oop v_false= 0;
static oop v_Set= 0;
static oop v_LookupKey= 0;
static oop v_OrderedCollection= 0;
static oop v_Dictionary= 0;
static oop v_IdentityDictionary= 0;
static oop v_Stream= 0;
static oop v_PositionableStream= 0;
static oop v_Scanner= 0;
static oop v_ParseNode= 0;
static oop v_LiteralNode= 0;
static oop v_ArrayLiteralNode= 0;
static oop v_ByteArrayNode= 0;
static oop v_WordArrayNode= 0;
static oop v_ArrayNode= 0;
static oop v_SymbolNode= 0;
static oop v_StringNode= 0;
static oop v_IntegerNode= 0;
static oop v_FloatNode= 0;
static oop v_CharacterNode= 0;
static oop v_VariableNode= 0;
static oop v_VarargNode= 0;
static oop v_SendNode= 0;
static oop v_AssignmentNode= 0;
static oop v_ReturnNode= 0;
static oop v_SequenceNode= 0;
static oop v_BlockNode= 0;
static oop v_MethodNode= 0;
static oop v_ExecNode= 0;
static oop v_IncludeNode= 0;
static oop v_ExternNode= 0;
static oop v_PrimitiveNode= 0;
static oop v_PrototypeNode= 0;
static oop v_DefinitionNode= 0;
static oop v_Parser= 0;
static oop al_17[3]= {
  
(oop)&l_14,
  
(oop)&l_15,
  
(oop)&l_16
};
static oop al_39[4]= {
  
(oop)&l_36,
  
(oop)&l_37,
  
(oop)&l_38,
  
(oop)&l_29
};
static size_t Parser___5fsizeof(oop _closure, oop v_self) { return sizeof(struct t_Parser); }
static char *Parser___5fdebugName(oop _closure, oop v_self) { return "Parser"; }
static oop Parser__on_notifying_(oop v__closure, oop v_stateful_self, oop v_self, oop v_aScannerContext, oop v_aCompiler)
 {
  _enter("on:notifying:", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop _1= 0;
  oop _2= 0;
  _line(53);
  _1= v_self;
  _2= v_aScannerContext;
  _line(55);
  _1=_super(v_Scanner, s_on_, _1, _2);
  v_self= _1;
  v_stateful_self= _1;
  _1= v_aCompiler;
  ((struct t_Parser *)v_stateful_self)->v_client= _1;
  _1= v_self;
  _line(57);
  _1=_send(s_scan, _1);
  _1= v_self;
  _leave();
  return _1;
  _leave();
 }
static oop Parser__note_(oop v__closure, oop v_stateful_self, oop v_self, oop v_marker)
 {
  _enter("note:", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop _1= 0;
  _line(60);
  _1= v_self;
  _leave();
  return _1;
  _leave();
 }
static oop Parser__error_(oop v__closure, oop v_stateful_self, oop v_self, oop v_message)
 {
  _enter("error:", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_detail= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  (void)v_detail;
  _line(69);
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(73);
  _2=_send(s_contents, _2);
  v_detail= _2;
  _line(73);
  _2=_send(s_notEmpty, _2);
  if (!_2) goto _l1;
 {
  _1= l_1;
  _2= v_detail;
  _line(73);
  _1=_send(s__2c, _1, _2);
  _2= l_2;
  _line(73);
  _1=_send(s__2c, _1, _2);
  v_detail= _1;
 }
 _l1:;
  _1= ((struct t_Parser *)v_stateful_self)->v_client;
  _2= v_message;
  _3= v_detail;
  _line(74);
  _2=_send(s__2c, _2, _3);
  _3= v_self;
  _line(74);
  _3=_send(s_position, _3);
  _line(74);
  _1=_send(s_error_at_, _1, _2, _3);
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parseByteArray(oop v__closure, oop v_stateful_self, oop v_self)
 {
  _enter("parseByteArray", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_position= 0;
  oop v_elements= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  oop _4= 0;
  oop _5= 0;
  (void)v_position;
  (void)v_elements;
  _line(77);
  _1= v_self;
  _line(80);
  _1=_send(s_position, _1);
  v_position= _1;
  _1= v_OrderedCollection;
  _line(81);
  _1=_send(s_new, _1);
  v_elements= _1;
  /* whileFalse: */
  goto _l3;
 _l2:;
 {
  _1= v_self;
  _2= l_4;
  _line(84);
  _1=_send(s_note_, _1, _2);
  /* ifFalse: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_5;
  _2= (_2 == _3) ? v_true : v_false;
  if (_2) goto _l4;
 {
  _1= v_self;
  _2= l_6;
  _line(85);
  _1=_send(s_error_, _1, _2);
 }
 _l4:;
  /* ifFalse: */
  _1= 0;
  _2= v_elements;
  _3= v_IntegerNode;
  _4= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(86);
  _4=_send(s_contents, _4);
  _5= v_self;
  _line(86);
  _5=_send(s_position, _5);
  _line(86);
  _3=_send(s_fromString_position_, _3, _4, _5);
  _line(86);
  _2=_send(s_add_, _2, _3);
  _line(86);
  _2=_send(s_value, _2);
  _3= l_7;
  _4= l_8;
  _line(86);
  _2=_send(s_between_and_, _2, _3, _4);
  if (_2) goto _l5;
 {
  _1= v_self;
  _2= l_9;
  _line(87);
  _1=_send(s_error_, _1, _2);
 }
 _l5:;
  _1= v_self;
  _line(88);
  _1=_send(s_scan, _1);
 }
 _l3:;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_type;
  _2= l_3;
  _1= (_1 == _2) ? v_true : v_false;
 }
  if (!_1) goto _l2;
  _1= 0;
  _1= v_self;
  _line(89);
  _1=_send(s_scan, _1);
  _1= v_ByteArrayNode;
  _2= v_elements;
  _3= v_position;
  _line(90);
  _1=_send(s_withElements_position_, _1, _2, _3);
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parseWordArray(oop v__closure, oop v_stateful_self, oop v_self)
 {
  _enter("parseWordArray", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_position= 0;
  oop v_elements= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  oop _4= 0;
  (void)v_position;
  (void)v_elements;
  _line(93);
  _1= v_self;
  _line(96);
  _1=_send(s_position, _1);
  v_position= _1;
  _1= v_OrderedCollection;
  _line(97);
  _1=_send(s_new, _1);
  v_elements= _1;
  /* whileFalse: */
  goto _l7;
 _l6:;
 {
  _1= v_self;
  _2= l_11;
  _line(100);
  _1=_send(s_note_, _1, _2);
  /* ifFalse: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_12;
  _2= (_2 == _3) ? v_true : v_false;
  if (_2) goto _l8;
 {
  _1= v_self;
  _2= l_13;
  _line(101);
  _1=_send(s_error_, _1, _2);
 }
 _l8:;
  _1= v_elements;
  _2= v_IntegerNode;
  _3= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(102);
  _3=_send(s_contents, _3);
  _4= v_self;
  _line(102);
  _4=_send(s_position, _4);
  _line(102);
  _2=_send(s_fromString_position_, _2, _3, _4);
  _line(102);
  _1=_send(s_add_, _1, _2);
  _1= v_self;
  _line(103);
  _1=_send(s_scan, _1);
 }
 _l7:;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_type;
  _2= l_10;
  _1= (_1 == _2) ? v_true : v_false;
 }
  if (!_1) goto _l6;
  _1= 0;
  _1= v_self;
  _line(104);
  _1=_send(s_scan, _1);
  _1= v_WordArrayNode;
  _2= v_elements;
  _3= v_position;
  _line(105);
  _1=_send(s_withElements_position_, _1, _2, _3);
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parseArrayLiteral(oop v__closure, oop v_stateful_self, oop v_self)
 {
  _enter("parseArrayLiteral", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_node= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  (void)v_node;
  _line(108);
  /* ifTrue: */
  _1= 0;
  _2= v_self;
  _line(112);
  _2=_send(s_parseLiteralP, _2);
  v_node= _2;
  _line(112);
  _2=_send(s_notNil, _2);
  if (!_2) goto _l9;
 {
  _1= v_node;
  _leave();
  return _1;
 }
 _l9:;
  /* ifTrue: */
  _1= 0;
  /* or: */
  _2= l_17;
  _3= ((struct t_Parser *)v_stateful_self)->v_type;
  _line(113);
  _2=_send(s_includes_, _2, _3);
  if (_2) goto _l11;
 {
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_18;
  _2= (_2 == _3) ? v_true : v_false;
 }
 _l11:;
  if (!_2) goto _l10;
 {
  _1= v_self;
  _2= l_19;
  _line(115);
  _1=_send(s_note_, _1, _2);
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_16;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l12;
 {
  _1= v_self;
  _line(116);
  _1=_send(s_scanKeywords, _1);
 }
 _l12:;
  _1= v_SymbolNode;
  _2= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(117);
  _2=_send(s_contents, _2);
  _3= v_self;
  _line(117);
  _3=_send(s_position, _3);
  _line(117);
  _1=_send(s_fromString_position_, _1, _2, _3);
  v_node= _1;
  _1= v_self;
  _line(118);
  _1=_send(s_scan, _1);
  _1= v_node;
  _leave();
  return _1;
 }
 _l10:;
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_20;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l13;
 {
  _1= v_self;
  _line(120);
  _send(s_scan, _1);
  _1=_send(s_parseArray, _1);
  _leave();
  return _1;
 }
 _l13:;
  _1= v_nil;
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parseArray(oop v__closure, oop v_stateful_self, oop v_self)
 {
  _enter("parseArray", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_position= 0;
  oop v_elements= 0;
  oop v_element= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  (void)v_position;
  (void)v_elements;
  (void)v_element;
  _line(124);
  _1= v_self;
  _line(127);
  _1=_send(s_position, _1);
  v_position= _1;
  _1= v_OrderedCollection;
  _line(128);
  _1=_send(s_new, _1);
  v_elements= _1;
  /* whileTrue: */
  goto _l15;
 _l14:;
 {
  _1= v_elements;
  _2= v_element;
  _line(129);
  _1=_send(s_add_, _1, _2);
 }
 _l15:;
 {
  _1= v_self;
  _line(129);
  _1=_send(s_parseArrayLiteral, _1);
  v_element= _1;
  _line(129);
  _1=_send(s_notNil, _1);
 }
  if (_1) goto _l14;
  _1= 0;
  _1= v_self;
  _2= l_21;
  _line(130);
  _1=_send(s_note_, _1, _2);
  /* ifFalse: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_22;
  _2= (_2 == _3) ? v_true : v_false;
  if (_2) goto _l16;
 {
  _1= v_self;
  _2= l_23;
  _line(131);
  _1=_send(s_error_, _1, _2);
 }
 _l16:;
  _1= v_self;
  _line(132);
  _1=_send(s_scan, _1);
  _1= v_ArrayNode;
  _2= v_elements;
  _3= v_position;
  _line(133);
  _1=_send(s_withElements_position_, _1, _2, _3);
  _leave();
  return _1;
  _leave();
 }
static oop b_26(oop v__closure, oop v__self)
 {
  _enter("[]", "?", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_node= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  (void)v_node;
  _line(139);
  _1= v_IntegerNode;
  _2= ((struct t_Parser *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1])->v_token;  /* token */
  _line(139);
  _2=_send(s_contents, _2);
  _3= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _line(139);
  _3=_send(s_position, _3);
  _line(139);
  _1=_send(s_fromString_position_, _1, _2, _3);
  v_node= _1;
  _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _line(139);
  _1=_send(s_scan, _1);
  _1= v_node;
  _leave();
  return _nlreturn(((struct t_BlockClosure *)v__self)->v__nlr, _1);
  _leave();
 }
static oop b_28(oop v__closure, oop v__self)
 {
  _enter("[]", "?", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_node= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  (void)v_node;
  _line(140);
  _1= v_FloatNode;
  _2= ((struct t_Parser *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1])->v_token;  /* token */
  _line(140);
  _2=_send(s_contents, _2);
  _3= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _line(140);
  _3=_send(s_position, _3);
  _line(140);
  _1=_send(s_fromString_position_, _1, _2, _3);
  v_node= _1;
  _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _line(140);
  _1=_send(s_scan, _1);
  _1= v_node;
  _leave();
  return _nlreturn(((struct t_BlockClosure *)v__self)->v__nlr, _1);
  _leave();
 }
static oop b_30(oop v__closure, oop v__self)
 {
  _enter("[]", "?", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_node= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  (void)v_node;
  _line(141);
  _1= v_StringNode;
  _2= ((struct t_Parser *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1])->v_token;  /* token */
  _line(141);
  _2=_send(s_contents, _2);
  _3= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _line(141);
  _3=_send(s_position, _3);
  _line(141);
  _1=_send(s_fromString_position_, _1, _2, _3);
  v_node= _1;
  _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _line(141);
  _1=_send(s_scan, _1);
  _1= v_node;
  _leave();
  return _nlreturn(((struct t_BlockClosure *)v__self)->v__nlr, _1);
  _leave();
 }
static oop b_32(oop v__closure, oop v__self)
 {
  _enter("[]", "?", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_node= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  (void)v_node;
  _line(142);
  _1= v_CharacterNode;
  _2= ((struct t_Parser *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1])->v_token;  /* token */
  _line(142);
  _2=_send(s_contents, _2);
  _line(142);
  _2=_send(s_first, _2);
  _3= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _line(142);
  _3=_send(s_position, _3);
  _line(142);
  _1=_send(s_withValue_position_, _1, _2, _3);
  v_node= _1;
  _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _line(142);
  _1=_send(s_scan, _1);
  _1= v_node;
  _leave();
  return _nlreturn(((struct t_BlockClosure *)v__self)->v__nlr, _1);
  _leave();
 }
static oop b_40(oop v__closure, oop v__self)
 {
  _enter("[]", "?", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_node= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  (void)v_node;
  _line(150);
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1])->v_type;  /* type */
  _3= l_38;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l17;
 {
  _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _line(151);
  _1=_send(s_scanKeywords, _1);
 }
 _l17:;
  _1= v_SymbolNode;
  _2= ((struct t_Parser *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1])->v_token;  /* token */
  _line(152);
  _2=_send(s_contents, _2);
  _3= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _line(152);
  _3=_send(s_position, _3);
  _line(152);
  _1=_send(s_fromString_position_, _1, _2, _3);
  v_node= _1;
  _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _line(153);
  _1=_send(s_scan, _1);
  _1= v_node;
  _leave();
  return _nlreturn(((struct t_BlockClosure *)v__self)->v__nlr, _1);
  _leave();
 }
static oop Parser__parseLiteralP(oop v__closure, oop v_stateful_self, oop v_self)
 {
  _enter("parseLiteralP", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop _state1= _send(s_new_5f_, v__vector, 12);
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  jmp_buf __nlr;
  oop _nlr;
  ((oop *)_state1)[1]= v_stateful_self;
  ((oop *)_state1)[2]= v_self;
  _nlr= (oop)&__nlr;
  if (setjmp(__nlr)) { return _nlresult(); }
  _line(136);
  _1= ((oop *)_state1)[2];  /* self */
  _2= l_24;
  _line(138);
  _1=_send(s_note_, _1, _2);
  _1= ((struct t_Parser *)((oop *)_state1)[1])->v_type;  /* type */
  _2= l_25;
  _1= (_1 == _2) ? v_true : v_false;
  /* Scope('node'->TemporaryVariableNode) */
  /* Scope('context'->SlotVariableNode 'token'->SlotVariableNode 'prevHash'->SlotVariableNode 'client'->SlotVariableNode 'type'->SlotVariableNode 'charEscapes'->SlotVariableNode 'stateful_self'->ArgumentVariableNode 'charTable'->SlotVariableNode 'self'->ArgumentVariableNode 'line'->SlotVariableNode 'c'->SlotVariableNode) */
  /* nil */
  /* 2 */
  /* 1 */
  _2= _send(s_function_5f_arity_5f_outer_state_nlr_5f_, v_BlockClosure, (oop)b_26, 0, 0, ((oop *)_state1), _nlr);
  _line(139);
  _1=_send(s_ifTrue_, _1, _2);
  _1= ((struct t_Parser *)((oop *)_state1)[1])->v_type;  /* type */
  _2= l_27;
  _1= (_1 == _2) ? v_true : v_false;
  /* Scope('node'->TemporaryVariableNode) */
  /* Scope('context'->SlotVariableNode 'token'->SlotVariableNode 'prevHash'->SlotVariableNode 'client'->SlotVariableNode 'type'->SlotVariableNode 'charEscapes'->SlotVariableNode 'stateful_self'->ArgumentVariableNode 'charTable'->SlotVariableNode 'self'->ArgumentVariableNode 'line'->SlotVariableNode 'c'->SlotVariableNode) */
  /* nil */
  /* 2 */
  /* 1 */
  _2= _send(s_function_5f_arity_5f_outer_state_nlr_5f_, v_BlockClosure, (oop)b_28, 0, 0, ((oop *)_state1), _nlr);
  _line(140);
  _1=_send(s_ifTrue_, _1, _2);
  _1= ((struct t_Parser *)((oop *)_state1)[1])->v_type;  /* type */
  _2= l_29;
  _1= (_1 == _2) ? v_true : v_false;
  /* Scope('node'->TemporaryVariableNode) */
  /* Scope('context'->SlotVariableNode 'token'->SlotVariableNode 'prevHash'->SlotVariableNode 'client'->SlotVariableNode 'type'->SlotVariableNode 'charEscapes'->SlotVariableNode 'stateful_self'->ArgumentVariableNode 'charTable'->SlotVariableNode 'self'->ArgumentVariableNode 'line'->SlotVariableNode 'c'->SlotVariableNode) */
  /* nil */
  /* 2 */
  /* 1 */
  _2= _send(s_function_5f_arity_5f_outer_state_nlr_5f_, v_BlockClosure, (oop)b_30, 0, 0, ((oop *)_state1), _nlr);
  _line(141);
  _1=_send(s_ifTrue_, _1, _2);
  _1= ((struct t_Parser *)((oop *)_state1)[1])->v_type;  /* type */
  _2= l_31;
  _1= (_1 == _2) ? v_true : v_false;
  /* Scope('node'->TemporaryVariableNode) */
  /* Scope('context'->SlotVariableNode 'token'->SlotVariableNode 'prevHash'->SlotVariableNode 'client'->SlotVariableNode 'type'->SlotVariableNode 'charEscapes'->SlotVariableNode 'stateful_self'->ArgumentVariableNode 'charTable'->SlotVariableNode 'self'->ArgumentVariableNode 'line'->SlotVariableNode 'c'->SlotVariableNode) */
  /* nil */
  /* 2 */
  /* 1 */
  _2= _send(s_function_5f_arity_5f_outer_state_nlr_5f_, v_BlockClosure, (oop)b_32, 0, 0, ((oop *)_state1), _nlr);
  _line(142);
  _1=_send(s_ifTrue_, _1, _2);
  _1= ((oop *)_state1)[2];  /* self */
  _2= l_33;
  _line(143);
  _1=_send(s_note_, _1, _2);
  /* ifFalse: */
  _1= 0;
  _2= ((struct t_Parser *)((oop *)_state1)[1])->v_type;  /* type */
  _3= l_34;
  _2= (_2 == _3) ? v_true : v_false;
  if (_2) goto _l18;
 {
  _1= v_nil;
  _leave();
  return _1;
 }
 _l18:;
  _1= ((oop *)_state1)[2];  /* self */
  _line(146);
  _1=_send(s_scan, _1);
  _1= ((oop *)_state1)[2];  /* self */
  _2= l_35;
  _line(147);
  _1=_send(s_note_, _1, _2);
  _1= l_39;
  _2= ((struct t_Parser *)((oop *)_state1)[1])->v_type;  /* type */
  _line(148);
  _1=_send(s_includes_, _1, _2);
  /* Scope('node'->TemporaryVariableNode) */
  /* Scope('context'->SlotVariableNode 'token'->SlotVariableNode 'prevHash'->SlotVariableNode 'client'->SlotVariableNode 'type'->SlotVariableNode 'charEscapes'->SlotVariableNode 'stateful_self'->ArgumentVariableNode 'charTable'->SlotVariableNode 'self'->ArgumentVariableNode 'line'->SlotVariableNode 'c'->SlotVariableNode) */
  /* nil */
  /* 2 */
  /* 1 */
  _2= _send(s_function_5f_arity_5f_outer_state_nlr_5f_, v_BlockClosure, (oop)b_40, 0, 0, ((oop *)_state1), _nlr);
  _line(149);
  _1=_send(s_ifTrue_, _1, _2);
  _1= ((oop *)_state1)[2];  /* self */
  _2= l_41;
  _line(155);
  _1=_send(s_note_, _1, _2);
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)((oop *)_state1)[1])->v_type;  /* type */
  _3= l_42;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l19;
 {
  _1= ((oop *)_state1)[2];  /* self */
  _line(156);
  _send(s_scan, _1);
  _1=_send(s_parseArray, _1);
  _leave();
  return _1;
 }
 _l19:;
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)((oop *)_state1)[1])->v_type;  /* type */
  _3= l_43;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l20;
 {
  _1= ((oop *)_state1)[2];  /* self */
  _line(157);
  _send(s_scan, _1);
  _1=_send(s_parseWordArray, _1);
  _leave();
  return _1;
 }
 _l20:;
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)((oop *)_state1)[1])->v_type;  /* type */
  _3= l_44;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l21;
 {
  _1= ((oop *)_state1)[2];  /* self */
  _line(158);
  _send(s_scan, _1);
  _1=_send(s_parseByteArray, _1);
  _leave();
  return _1;
 }
 _l21:;
  _1= ((oop *)_state1)[2];  /* self */
  _2= l_45;
  _line(159);
  _1=_send(s_error_, _1, _2);
  _1= ((oop *)_state1)[2];  /* self */
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parsePrimary(oop v__closure, oop v_stateful_self, oop v_self)
 {
  _enter("parsePrimary", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_node= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  (void)v_node;
  _line(162);
  _1= v_self;
  _2= l_46;
  _line(165);
  _1=_send(s_note_, _1, _2);
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_47;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l22;
 {
  _1= v_VariableNode;
  _2= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(168);
  _2=_send(s_contents, _2);
  _3= v_self;
  _line(168);
  _3=_send(s_position, _3);
  _line(168);
  _1=_send(s_withName_position_, _1, _2, _3);
  v_node= _1;
  _1= v_self;
  _line(169);
  _1=_send(s_scan, _1);
  _1= v_node;
  _leave();
  return _1;
 }
 _l22:;
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_48;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l23;
 {
  _1= v_self;
  _line(173);
  _send(s_scan, _1);
  _1=_send(s_parseExpression, _1);
  v_node= _1;
  /* ifFalse: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_49;
  _2= (_2 == _3) ? v_true : v_false;
  if (_2) goto _l24;
 {
  _1= v_self;
  _2= l_50;
  _line(174);
  _1=_send(s_error_, _1, _2);
 }
 _l24:;
  _1= v_self;
  _line(175);
  _1=_send(s_scan, _1);
  _1= v_node;
  _leave();
  return _1;
 }
 _l23:;
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_51;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l25;
 {
  _1= v_self;
  _line(179);
  _send(s_scan, _1);
  _1=_send(s_parseBlock, _1);
  _leave();
  return _1;
 }
 _l25:;
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_52;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l26;
 {
  _1= v_VarargNode;
  _2= v_self;
  _line(182);
  _2=_send(s_position, _2);
  _line(182);
  _1=_send(s_withPosition_, _1, _2);
  v_node= _1;
  _1= v_self;
  _line(183);
  _1=_send(s_scan, _1);
  _1= v_node;
  _leave();
  return _1;
 }
 _l26:;
  _1= v_self;
  _2= l_53;
  _line(185);
  _1=_send(s_note_, _1, _2);
  _1= v_self;
  _line(186);
  _1=_send(s_parseLiteralP, _1);
  v_node= _1;
  _1= v_self;
  _2= l_54;
  _line(187);
  _1=_send(s_note_, _1, _2);
  /* ifTrue: */
  _1= 0;
  _2= v_node;
  _line(188);
  _2=_send(s_notNil, _2);
  if (!_2) goto _l27;
 {
  _1= v_node;
  _leave();
  return _1;
 }
 _l27:;
  _1= v_self;
  _2= l_55;
  _line(190);
  _1=_send(s_note_, _1, _2);
  _1= v_self;
  _2= l_56;
  _line(191);
  _1=_send(s_error_, _1, _2);
  _1= v_self;
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parseUnary(oop v__closure, oop v_stateful_self, oop v_self)
 {
  _enter("parseUnary", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_node= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  oop _4= 0;
  (void)v_node;
  _line(194);
  _1= v_self;
  _line(197);
  _1=_send(s_parsePrimary, _1);
  v_node= _1;
  /* whileTrue: */
  goto _l29;
 _l28:;
 {
  _1= v_SendNode;
  _2= v_node;
  _3= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(200);
  _3=_send(s_contents, _3);
  _4= v_self;
  _line(200);
  _4=_send(s_position, _4);
  _line(200);
  _1=_send(s_withReceiver_selector_position_, _1, _2, _3, _4);
  v_node= _1;
  _1= v_self;
  _line(201);
  _1=_send(s_scan, _1);
 }
 _l29:;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_type;
  _2= l_57;
  _1= (_1 == _2) ? v_true : v_false;
 }
  if (_1) goto _l28;
  _1= 0;
  _1= v_node;
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parseBinary(oop v__closure, oop v_stateful_self, oop v_self)
 {
  _enter("parseBinary", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_node= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  oop _4= 0;
  (void)v_node;
  _line(209);
  _1= v_self;
  _line(212);
  _1=_send(s_parseUnary, _1);
  v_node= _1;
  /* whileTrue: */
  goto _l31;
 _l30:;
 {
  _1= v_SendNode;
  _2= v_node;
  _3= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(215);
  _3=_send(s_contents, _3);
  _4= v_self;
  _line(215);
  _4=_send(s_position, _4);
  _line(215);
  _1=_send(s_withReceiver_selector_position_, _1, _2, _3, _4);
  v_node= _1;
  _1= v_node;
  _2= v_self;
  _line(216);
  _send(s_scan, _2);
  _2=_send(s_parseUnary, _2);
  _line(216);
  _1=_send(s_addArgument_, _1, _2);
 }
 _l31:;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_type;
  _2= l_58;
  _1= (_1 == _2) ? v_true : v_false;
 }
  if (_1) goto _l30;
  _1= 0;
  _1= v_node;
  _leave();
  return _1;
  _leave();
 }
static oop b_67(oop v__closure, oop v__self)
 {
  _enter("[]", "?", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop _1= 0;
  oop _2= 0;
  _line(240);
  _1= ((struct t_Parser *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1])->v_type;  /* type */
  _2= l_65;
  _1= (_1 == _2) ? v_true : v_false;
  _leave();
  return _1;
  _leave();
 }
static oop b_68(oop v__closure, oop v__self)
 {
  _enter("[]", "?", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_cascade= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  oop _4= 0;
  (void)v_cascade;
  _line(242);
  _1= v_SendNode;
  _2= v_nil;
  _3= l_69;
  _4= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _line(243);
  _4=_send(s_position, _4);
  _line(243);
  _1=_send(s_withReceiver_selector_position_, _1, _2, _3, _4);
  v_cascade= _1;
  _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _line(244);
  _1=_send(s_scan, _1);
  /* ifTrue:ifFalse: */
  _1= ((struct t_Parser *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1])->v_type;  /* type */
  _2= l_61;
  _1= (_1 == _2) ? v_true : v_false;
  if (!_1) goto _l32;
 {
  /* whileTrue: */
  goto _l35;
 _l34:;
 {
  _1= v_cascade;
  _2= ((struct t_Parser *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1])->v_token;  /* token */
  _line(249);
  _2=_send(s_contents, _2);
  _line(249);
  _send(s_addKeyword_, _1, _2);
  _2= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _line(249);
  _send(s_scan, _2);
  _2=_send(s_parseBinary, _2);
  _1=_send(s_addArgument_, _1, _2);
 }
 _l35:;
 {
  _1= ((struct t_Parser *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1])->v_type;  /* type */
  _2= l_61;
  _1= (_1 == _2) ? v_true : v_false;
 }
  if (_1) goto _l34;
  _1= 0;
 }
  goto _l33;
 _l32:;
 {
  /* ifTrue:ifFalse: */
  _1= ((struct t_Parser *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1])->v_type;  /* type */
  _2= l_70;
  _1= (_1 == _2) ? v_true : v_false;
  if (!_1) goto _l36;
 {
  _1= v_cascade;
  _2= ((struct t_Parser *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1])->v_token;  /* token */
  _line(252);
  _2=_send(s_contents, _2);
  _line(252);
  _send(s_addKeyword_, _1, _2);
  _2= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _line(252);
  _send(s_scan, _2);
  _2=_send(s_parseUnary, _2);
  _1=_send(s_addArgument_, _1, _2);
 }
  goto _l37;
 _l36:;
 {
  /* ifTrue:ifFalse: */
  _1= ((struct t_Parser *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1])->v_type;  /* type */
  _2= l_71;
  _1= (_1 == _2) ? v_true : v_false;
  if (!_1) goto _l38;
 {
  _1= v_cascade;
  _2= ((struct t_Parser *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1])->v_token;  /* token */
  _line(256);
  _2=_send(s_contents, _2);
  _line(256);
  _1=_send(s_addKeyword_, _1, _2);
  _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _line(257);
  _1=_send(s_scan, _1);
 }
  goto _l39;
 _l38:;
 {
  _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _2= l_72;
  _line(258);
  _1=_send(s_error_, _1, _2);
 }
 _l39:;
 }
 _l37:;
 }
 _l33:;
  /* whileTrue: */
  goto _l41;
 _l40:;
 {
  _1= v_cascade;
  _2= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _line(259);
  _send(s_scan, _2);
  _2=_send(s_parseBinary, _2);
  _line(259);
  _1=_send(s_addArgument_, _1, _2);
 }
 _l41:;
 {
  _1= ((struct t_Parser *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1])->v_type;  /* type */
  _2= l_63;
  _1= (_1 == _2) ? v_true : v_false;
 }
  if (_1) goto _l40;
  _1= 0;
  _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[3];  /* node */
  _2= v_cascade;
  _line(260);
  _1=_send(s_addCascade_, _1, _2);
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parseExpression(oop v__closure, oop v_stateful_self, oop v_self)
 {
  _enter("parseExpression", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop _state1= _send(s_new_5f_, v__vector, 13);
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  oop _4= 0;
  ((oop *)_state1)[1]= v_stateful_self;
  ((oop *)_state1)[2]= v_self;
  _line(220);
  _1= ((oop *)_state1)[2];  /* self */
  _2= l_59;
  _line(223);
  _1=_send(s_note_, _1, _2);
  _1= ((oop *)_state1)[2];  /* self */
  _line(224);
  _1=_send(s_parseBinary, _1);
  ((oop *)_state1)[3]= _1;  /* node */
  _1= ((oop *)_state1)[2];  /* self */
  _2= l_60;
  _line(225);
  _1=_send(s_note_, _1, _2);
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)((oop *)_state1)[1])->v_type;  /* type */
  _3= l_61;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l42;
 {
  _1= v_SendNode;
  _2= ((oop *)_state1)[3];  /* node */
  _3= ((struct t_Parser *)((oop *)_state1)[1])->v_token;  /* token */
  _line(228);
  _3=_send(s_contents, _3);
  _4= ((oop *)_state1)[2];  /* self */
  _line(228);
  _4=_send(s_position, _4);
  _line(228);
  _1=_send(s_withReceiver_selector_position_, _1, _2, _3, _4);
  ((oop *)_state1)[3]= _1;  /* node */
  _1= ((oop *)_state1)[3];  /* node */
  _2= ((oop *)_state1)[2];  /* self */
  _line(229);
  _send(s_scan, _2);
  _2=_send(s_parseBinary, _2);
  _line(229);
  _1=_send(s_addArgument_, _1, _2);
  _1= ((oop *)_state1)[2];  /* self */
  _2= l_62;
  _line(230);
  _1=_send(s_note_, _1, _2);
  /* whileTrue: */
  goto _l44;
 _l43:;
 {
  _1= ((oop *)_state1)[3];  /* node */
  _2= ((struct t_Parser *)((oop *)_state1)[1])->v_token;  /* token */
  _line(233);
  _2=_send(s_contents, _2);
  _line(233);
  _send(s_addKeyword_, _1, _2);
  _2= ((oop *)_state1)[2];  /* self */
  _line(233);
  _send(s_scan, _2);
  _2=_send(s_parseBinary, _2);
  _1=_send(s_addArgument_, _1, _2);
 }
 _l44:;
 {
  _1= ((struct t_Parser *)((oop *)_state1)[1])->v_type;  /* type */
  _2= l_61;
  _1= (_1 == _2) ? v_true : v_false;
 }
  if (_1) goto _l43;
  _1= 0;
 }
 _l42:;
  /* whileTrue: */
  goto _l46;
 _l45:;
 {
  _1= ((oop *)_state1)[3];  /* node */
  _2= ((oop *)_state1)[2];  /* self */
  _line(235);
  _send(s_scan, _2);
  _2=_send(s_parseBinary, _2);
  _line(235);
  _1=_send(s_addArgument_, _1, _2);
 }
 _l46:;
 {
  /* and: */
  _1= ((struct t_Parser *)((oop *)_state1)[1])->v_type;  /* type */
  _2= l_63;
  _1= (_1 == _2) ? v_true : v_false;
  if (!_1) goto _l47;
 {
  _1= ((oop *)_state1)[3];  /* node */
  _line(234);
  _1=_send(s_isSendNode, _1);
 }
 _l47:;
 }
  if (_1) goto _l45;
  _1= 0;
  /* ifTrue: */
  _1= 0;
  /* and: */
  _2= ((struct t_Parser *)((oop *)_state1)[1])->v_type;  /* type */
  _3= l_64;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l49;
 {
  _2= ((oop *)_state1)[3];  /* node */
  _line(236);
  _2=_send(s_isVariableNode, _2);
 }
 _l49:;
  if (!_2) goto _l48;
 {
  _1= v_AssignmentNode;
  _2= ((oop *)_state1)[3];  /* node */
  _3= ((oop *)_state1)[2];  /* self */
  _line(237);
  _send(s_scan, _3);
  _3=_send(s_parseExpression, _3);
  _4= ((oop *)_state1)[3];  /* node */
  _line(237);
  _4=_send(s_position, _4);
  _line(237);
  _1=_send(s_withVariable_value_position_, _1, _2, _3, _4);
  _leave();
  return _1;
 }
 _l48:;
  /* ifTrue: */
  _1= 0;
  /* and: */
  _2= ((struct t_Parser *)((oop *)_state1)[1])->v_type;  /* type */
  _3= l_65;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l51;
 {
  _2= ((oop *)_state1)[3];  /* node */
  _line(238);
  _2=_send(s_isSendNode, _2);
  _line(238);
  _2=_send(s_not, _2);
 }
 _l51:;
  if (!_2) goto _l50;
 {
  _1= ((oop *)_state1)[2];  /* self */
  _2= l_66;
  _line(239);
  _1=_send(s_error_, _1, _2);
 }
 _l50:;
  /* Scope() */
  /* Scope('context'->SlotVariableNode 'token'->SlotVariableNode 'prevHash'->SlotVariableNode 'client'->SlotVariableNode 'node'->TemporaryVariableNode 'stateful_self'->ArgumentVariableNode 'charEscapes'->SlotVariableNode 'type'->SlotVariableNode 'charTable'->SlotVariableNode 'self'->ArgumentVariableNode 'line'->SlotVariableNode 'c'->SlotVariableNode) */
  /* nil */
  /* 2 */
  /* 1 */
  _1= _send(s_function_5f_arity_5f_outer_state_nlr_5f_, v_BlockClosure, (oop)b_67, 0, 0, ((oop *)_state1), 0);
  /* Scope('cascade'->TemporaryVariableNode) */
  /* Scope('context'->SlotVariableNode 'token'->SlotVariableNode 'prevHash'->SlotVariableNode 'client'->SlotVariableNode 'node'->TemporaryVariableNode 'stateful_self'->ArgumentVariableNode 'charEscapes'->SlotVariableNode 'type'->SlotVariableNode 'charTable'->SlotVariableNode 'self'->ArgumentVariableNode 'line'->SlotVariableNode 'c'->SlotVariableNode) */
  /* nil */
  /* 2 */
  /* 1 */
  _2= _send(s_function_5f_arity_5f_outer_state_nlr_5f_, v_BlockClosure, (oop)b_68, 0, 0, ((oop *)_state1), 0);
  _line(241);
  _1=_send(s_whileTrue_, _1, _2);
  _1= ((oop *)_state1)[3];  /* node */
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parseTemporaries_(oop v__closure, oop v_stateful_self, oop v_self, oop v_block)
 {
  _enter("parseTemporaries:", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  _line(264);
  /* whileTrue: */
  goto _l53;
 _l52:;
 {
  _1= v_block;
  _2= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(268);
  _2=_send(s_contents, _2);
  _line(268);
  _1=_send(s_addTemporary_, _1, _2);
  _1= v_self;
  _line(269);
  _1=_send(s_scan, _1);
 }
 _l53:;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_type;
  _2= l_73;
  _1= (_1 == _2) ? v_true : v_false;
 }
  if (_1) goto _l52;
  _1= 0;
  /* ifFalse: */
  _1= 0;
  /* and: */
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_74;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l55;
 {
  _2= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(270);
  _2=_send(s_contents, _2);
  _3= l_75;
  if (1 & (int)_2 & (int)_3) {
    _2= (((int)_2 == (int)_3) ? v_true : v_false);
  } else _2= _send(s__3d, _2, _3);
 }
 _l55:;
  if (_2) goto _l54;
 {
  _1= v_self;
  _2= l_76;
  _line(271);
  _1=_send(s_error_, _1, _2);
 }
 _l54:;
  _1= v_self;
  _line(272);
  _1=_send(s_scan, _1);
  _1= v_block;
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parseSequence_(oop v__closure, oop v_stateful_self, oop v_self, oop v_block)
 {
  _enter("parseSequence:", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  oop _4= 0;
  _line(276);
  _1= v_self;
  _2= l_77;
  _line(278);
  _1=_send(s_note_, _1, _2);
  /* ifTrue: */
  _1= 0;
  /* and: */
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_78;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l57;
 {
  _2= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(279);
  _2=_send(s_contents, _2);
  _3= l_79;
  if (1 & (int)_2 & (int)_3) {
    _2= (((int)_2 == (int)_3) ? v_true : v_false);
  } else _2= _send(s__3d, _2, _3);
 }
 _l57:;
  if (!_2) goto _l56;
 {
  _1= v_self;
  _line(280);
  _send(s_scan, _1);
  _2= v_block;
  _1=_send(s_parseTemporaries_, _1, _2);
 }
 _l56:;
  _1= v_self;
  _2= l_80;
  _line(281);
  _1=_send(s_note_, _1, _2);
  /* whileFalse: */
  goto _l59;
 _l58:;
 {
  _1= v_self;
  _2= l_82;
  _line(284);
  _1=_send(s_note_, _1, _2);
  _1= v_block;
  /* ifTrue:ifFalse: */
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_83;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l60;
 {
  _2= v_self;
  _line(286);
  _2=_send(s_parsePrimitive, _2);
 }
  goto _l61;
 _l60:;
 {
  /* ifTrue:ifFalse: */
  /* and: */
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_78;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l64;
 {
  _2= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(287);
  _2=_send(s_contents, _2);
  _3= l_84;
  if (1 & (int)_2 & (int)_3) {
    _2= (((int)_2 == (int)_3) ? v_true : v_false);
  } else _2= _send(s__3d, _2, _3);
 }
 _l64:;
  if (!_2) goto _l62;
 {
  _2= v_ReturnNode;
  _3= v_self;
  _line(288);
  _send(s_scan, _3);
  _3=_send(s_parseExpression, _3);
  _4= v_self;
  _line(288);
  _4=_send(s_position, _4);
  _line(288);
  _2=_send(s_withValue_position_, _2, _3, _4);
 }
  goto _l63;
 _l62:;
 {
  _2= v_self;
  _line(289);
  _2=_send(s_parseExpression, _2);
 }
 _l63:;
 }
 _l61:;
  _line(285);
  _1=_send(s_addStatement_, _1, _2);
  /* ifFalse: */
  _1= 0;
  /* or: */
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_85;
  _2= (_2 == _3) ? v_true : v_false;
  if (_2) goto _l66;
 {
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_81;
  _2= (_2 == _3) ? v_true : v_false;
 }
 _l66:;
  if (_2) goto _l65;
 {
  _1= v_self;
  _2= l_86;
  _line(290);
  _1=_send(s_error_, _1, _2);
 }
 _l65:;
  /* whileTrue: */
  goto _l68;
 _l67:;
 {
  _1= v_self;
  _line(291);
  _1=_send(s_scan, _1);
 }
 _l68:;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_type;
  _2= l_85;
  _1= (_1 == _2) ? v_true : v_false;
 }
  if (_1) goto _l67;
  _1= 0;
  /* ifTrue: */
  _1= 0;
  /* and: */
  _2= v_block;
  _line(292);
  _2=_send(s_lastStatement, _2);
  _line(292);
  _2=_send(s_isReturnNode, _2);
  if (!_2) goto _l70;
 {
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_81;
  _2= (_2 != _3) ? v_true : v_false;
 }
 _l70:;
  if (!_2) goto _l69;
 {
  _1= v_self;
  _2= l_87;
  _line(292);
  _1=_send(s_error_, _1, _2);
 }
 _l69:;
 }
 _l59:;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_type;
  _2= l_81;
  _1= (_1 == _2) ? v_true : v_false;
 }
  if (!_1) goto _l58;
  _1= 0;
  _1= v_self;
  _2= l_88;
  _line(293);
  _1=_send(s_note_, _1, _2);
  _1= v_self;
  _line(294);
  _1=_send(s_scan, _1);
  _1= v_self;
  _2= l_89;
  _line(295);
  _1=_send(s_note_, _1, _2);
  _1= v_block;
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parseBlockParameters_(oop v__closure, oop v_stateful_self, oop v_self, oop v_block)
 {
  _enter("parseBlockParameters:", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  _line(299);
  /* whileTrue: */
  goto _l72;
 _l71:;
 {
  _1= v_self;
  _line(303);
  _1=_send(s_scan, _1);
  /* ifFalse: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_91;
  _2= (_2 == _3) ? v_true : v_false;
  if (_2) goto _l73;
 {
  _1= v_self;
  _2= l_92;
  _line(304);
  _1=_send(s_error_, _1, _2);
 }
 _l73:;
  _1= v_block;
  _2= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(305);
  _2=_send(s_contents, _2);
  _line(305);
  _1=_send(s_addArgument_, _1, _2);
  _1= v_self;
  _line(306);
  _1=_send(s_scan, _1);
 }
 _l72:;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_type;
  _2= l_90;
  _1= (_1 == _2) ? v_true : v_false;
 }
  if (_1) goto _l71;
  _1= 0;
  /* ifTrue:ifFalse: */
  /* and: */
  _1= ((struct t_Parser *)v_stateful_self)->v_type;
  _2= l_93;
  _1= (_1 == _2) ? v_true : v_false;
  if (!_1) goto _l76;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(307);
  _1=_send(s_contents, _1);
  _2= l_94;
  if (1 & (int)_1 & (int)_2) {
    _1= (((int)_1 == (int)_2) ? v_true : v_false);
  } else _1= _send(s__3d, _1, _2);
 }
 _l76:;
  if (!_1) goto _l74;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(308);
  _send(s_resetToStart, _1);
  _2= l_95;
  _1=_send(s_nextPut_, _1, _2);
 }
  goto _l75;
 _l74:;
 {
  /* ifFalse: */
  _1= 0;
  /* and: */
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_93;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l78;
 {
  _2= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(310);
  _2=_send(s_contents, _2);
  _3= l_96;
  if (1 & (int)_2 & (int)_3) {
    _2= (((int)_2 == (int)_3) ? v_true : v_false);
  } else _2= _send(s__3d, _2, _3);
 }
 _l78:;
  if (_2) goto _l77;
 {
  _1= v_self;
  _2= l_97;
  _line(311);
  _1=_send(s_error_, _1, _2);
 }
 _l77:;
  _1= v_self;
  _line(312);
  _1=_send(s_scan, _1);
 }
 _l75:;
  _1= v_self;
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parseBlock(oop v__closure, oop v_stateful_self, oop v_self)
 {
  _enter("parseBlock", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_block= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  (void)v_block;
  _line(315);
  _1= v_BlockNode;
  _2= v_self;
  _line(318);
  _2=_send(s_position, _2);
  _line(318);
  _1=_send(s_withPosition_, _1, _2);
  v_block= _1;
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_98;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l79;
 {
  _1= v_self;
  _2= v_block;
  _line(319);
  _1=_send(s_parseBlockParameters_, _1, _2);
 }
 _l79:;
  _1= v_self;
  _2= v_block;
  _line(320);
  _1=_send(s_parseSequence_, _1, _2);
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parseExec(oop v__closure, oop v_stateful_self, oop v_self)
 {
  _enter("parseExec", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  _line(323);
  _1= v_self;
  _line(325);
  _send(s_scan, _1);
  _2= v_ExecNode;
  _3= v_self;
  _line(325);
  _3=_send(s_position, _3);
  _line(325);
  _2=_send(s_withPosition_, _2, _3);
  _1=_send(s_parseSequence_, _1, _2);
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parseExtern(oop v__closure, oop v_stateful_self, oop v_self)
 {
  _enter("parseExtern", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_text= 0;
  oop v_node= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  oop _4= 0;
  (void)v_text;
  (void)v_node;
  _line(328);
  _1= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(331);
  _1=_send(s_contents, _1);
  v_text= _1;
  _1= v_nil;
  v_node= _1;
  /* ifTrue:ifFalse: */
  _1= v_text;
  _2= l_99;
  _line(333);
  _1=_send(s_beginsWith_, _1, _2);
  if (!_1) goto _l80;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_client;
  _2= v_text;
  _3= l_100;
  _line(333);
  _2=_send(s_tokenized_, _2, _3);
  _line(333);
  _2=_send(s_second, _2);
  _line(333);
  _1=_send(s_import_, _1, _2);
 }
  goto _l81;
 _l80:;
 {
  /* ifTrue:ifFalse: */
  _1= v_text;
  _2= l_101;
  _line(334);
  _1=_send(s_beginsWith_, _1, _2);
  if (!_1) goto _l82;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_client;
  _2= v_text;
  _3= l_100;
  _line(334);
  _2=_send(s_tokenized_, _2, _3);
  _line(334);
  _2=_send(s_second, _2);
  _line(334);
  _1=_send(s_include_, _1, _2);
 }
  goto _l83;
 _l82:;
 {
  /* ifTrue:ifFalse: */
  _1= v_text;
  _2= l_102;
  _line(335);
  _1=_send(s_beginsWith_, _1, _2);
  if (!_1) goto _l84;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_client;
  _2= v_text;
  _3= l_100;
  _line(335);
  _2=_send(s_tokenized_, _2, _3);
  _line(335);
  _2=_send(s_second, _2);
  _line(335);
  _1=_send(s_input_, _1, _2);
 }
  goto _l85;
 _l84:;
 {
  /* ifTrue:ifFalse: */
  _1= v_text;
  _2= l_103;
  _line(336);
  _1=_send(s_beginsWith_, _1, _2);
  if (!_1) goto _l86;
 {
  _1= v_IncludeNode;
  _2= l_104;
  _3= v_text;
  _4= l_105;
  _line(336);
  _3=_send(s_tokenized_, _3, _4);
  _line(336);
  _3=_send(s_second, _3);
  _line(336);
  _2=_send(s__2c, _2, _3);
  _3= l_106;
  _line(336);
  _2=_send(s__2c, _2, _3);
  _3= v_self;
  _line(336);
  _3=_send(s_position, _3);
  _line(336);
  _1=_send(s_withName_position_, _1, _2, _3);
  v_node= _1;
 }
  goto _l87;
 _l86:;
 {
  /* ifTrue:ifFalse: */
  _1= v_text;
  _2= l_107;
  _line(337);
  _1=_send(s_beginsWith_, _1, _2);
  if (!_1) goto _l88;
 {
  _1= v_IncludeNode;
  _2= l_108;
  _3= v_text;
  _4= l_109;
  _line(337);
  _3=_send(s_tokenized_, _3, _4);
  _line(337);
  _3=_send(s_second, _3);
  _line(337);
  _2=_send(s__2c, _2, _3);
  _3= l_108;
  _line(337);
  _2=_send(s__2c, _2, _3);
  _3= v_self;
  _line(337);
  _3=_send(s_position, _3);
  _line(337);
  _1=_send(s_withName_position_, _1, _2, _3);
  v_node= _1;
 }
  goto _l89;
 _l88:;
 {
  /* ifTrue:ifFalse: */
  _1= v_text;
  _2= l_110;
  _line(338);
  _1=_send(s_beginsWith_, _1, _2);
  if (!_1) goto _l90;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_client;
  _2= v_text;
  _line(338);
  _1=_send(s_pragma_, _1, _2);
 }
  goto _l91;
 _l90:;
 {
  /* ifTrue:ifFalse: */
  _1= v_text;
  _2= l_111;
  _line(339);
  _1=_send(s_beginsWith_, _1, _2);
  if (!_1) goto _l92;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_client;
  _2= v_text;
  _line(339);
  _1=_send(s_external_, _1, _2);
 }
  goto _l93;
 _l92:;
 {
  /* ifTrue:ifFalse: */
  _1= v_text;
  _2= l_112;
  _line(340);
  _1=_send(s_beginsWith_, _1, _2);
  if (!_1) goto _l94;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_client;
  _2= v_text;
  _line(340);
  _1=_send(s_internal_, _1, _2);
 }
  goto _l95;
 _l94:;
 {
  _1= v_ExternNode;
  _2= v_text;
  _3= v_self;
  _line(341);
  _3=_send(s_position, _3);
  _line(341);
  _1=_send(s_withCode_position_, _1, _2, _3);
  v_node= _1;
 }
 _l95:;
 }
 _l93:;
 }
 _l91:;
 }
 _l89:;
 }
 _l87:;
 }
 _l85:;
 }
 _l83:;
 }
 _l81:;
  _1= v_self;
  _line(342);
  _1=_send(s_scan, _1);
  _1= v_node;
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parsePrimitive(oop v__closure, oop v_stateful_self, oop v_self)
 {
  _enter("parsePrimitive", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_node= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  (void)v_node;
  _line(346);
  _1= v_PrimitiveNode;
  _2= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(349);
  _2=_send(s_contents, _2);
  _3= v_self;
  _line(349);
  _3=_send(s_position, _3);
  _line(349);
  _1=_send(s_withCode_position_, _1, _2, _3);
  v_node= _1;
  _1= v_self;
  _line(350);
  _1=_send(s_scan, _1);
  _1= v_node;
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parsePrototype_(oop v__closure, oop v_stateful_self, oop v_self, oop v_name)
 {
  _enter("parsePrototype:", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_position= 0;
  oop v_base= 0;
  oop v_slots= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  oop _4= 0;
  oop _5= 0;
  (void)v_position;
  (void)v_base;
  (void)v_slots;
  _line(354);
  _1= v_self;
  _line(357);
  _1=_send(s_position, _1);
  v_position= _1;
  _1= v_nil;
  v_base= _1;
  _1= v_OrderedCollection;
  _line(359);
  _1=_send(s_new, _1);
  v_slots= _1;
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_113;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l96;
 {
  _1= v_self;
  _line(362);
  _1=_send(s_scan, _1);
  /* ifFalse: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_114;
  _2= (_2 == _3) ? v_true : v_false;
  if (_2) goto _l97;
 {
  _1= v_self;
  _2= l_115;
  _line(363);
  _1=_send(s_error_, _1, _2);
 }
 _l97:;
  _1= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(364);
  _1=_send(s_contents, _1);
  v_base= _1;
  _1= v_self;
  _line(365);
  _1=_send(s_scan, _1);
 }
 _l96:;
  /* ifFalse: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_116;
  _2= (_2 == _3) ? v_true : v_false;
  if (_2) goto _l98;
 {
  _1= v_self;
  _2= l_117;
  _line(366);
  _1=_send(s_error_, _1, _2);
 }
 _l98:;
  _1= v_self;
  _line(367);
  _1=_send(s_scan, _1);
  /* whileTrue: */
  goto _l100;
 _l99:;
 {
  _1= v_slots;
  _2= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(370);
  _2=_send(s_contents, _2);
  _line(370);
  _1=_send(s_add_, _1, _2);
  _1= v_self;
  _line(371);
  _1=_send(s_scan, _1);
 }
 _l100:;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_type;
  _2= l_114;
  _1= (_1 == _2) ? v_true : v_false;
 }
  if (_1) goto _l99;
  _1= 0;
  /* ifFalse: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_118;
  _2= (_2 == _3) ? v_true : v_false;
  if (_2) goto _l101;
 {
  _1= v_self;
  _2= l_119;
  _line(372);
  _1=_send(s_error_, _1, _2);
 }
 _l101:;
  _1= v_self;
  _line(373);
  _1=_send(s_scan, _1);
  _1= v_PrototypeNode;
  _2= v_name;
  _3= v_base;
  _4= v_slots;
  _5= v_position;
  _line(374);
  _1=_send(s_withName_base_slots_position_, _1, _2, _3, _4, _5);
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parseVarParams_(oop v__closure, oop v_stateful_self, oop v_self, oop v_params)
 {
  _enter("parseVarParams:", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  _line(377);
  /* whileTrue: */
  goto _l103;
 _l102:;
 {
  _1= v_self;
  _line(381);
  _1=_send(s_scan, _1);
  /* ifFalse: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_121;
  _2= (_2 == _3) ? v_true : v_false;
  if (_2) goto _l104;
 {
  _1= v_self;
  _2= l_122;
  _line(382);
  _1=_send(s_error_, _1, _2);
 }
 _l104:;
  _1= v_params;
  _2= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(383);
  _2=_send(s_contents, _2);
  _line(383);
  _1=_send(s_add_, _1, _2);
  _1= v_self;
  _line(384);
  _1=_send(s_scan, _1);
 }
 _l103:;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_type;
  _2= l_120;
  _1= (_1 == _2) ? v_true : v_false;
 }
  if (_1) goto _l102;
  _1= 0;
  _1= v_self;
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parseMethod_(oop v__closure, oop v_stateful_self, oop v_self, oop v_typeName)
 {
  _enter("parseMethod:", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_position= 0;
  oop v_selector= 0;
  oop v_arguments= 0;
  oop v_node= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  oop _4= 0;
  oop _5= 0;
  (void)v_position;
  (void)v_selector;
  (void)v_arguments;
  (void)v_node;
  _line(387);
  _1= v_self;
  _2= l_123;
  _line(390);
  _1=_send(s_note_, _1, _2);
  _1= v_self;
  _line(391);
  _1=_send(s_position, _1);
  v_position= _1;
  _1= l_124;
  v_selector= _1;
  _1= v_OrderedCollection;
  _line(393);
  _1=_send(s_new, _1);
  v_arguments= _1;
  /* ifTrue:ifFalse: */
  _1= ((struct t_Parser *)v_stateful_self)->v_type;
  _2= l_125;
  _1= (_1 == _2) ? v_true : v_false;
  if (!_1) goto _l105;
 {
  /* whileTrue: */
  goto _l108;
 _l107:;
 {
  _1= v_selector;
  _2= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(398);
  _2=_send(s_contents, _2);
  _line(398);
  _1=_send(s__2c, _1, _2);
  v_selector= _1;
  _1= v_self;
  _line(399);
  _1=_send(s_scan, _1);
  /* ifFalse: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_126;
  _2= (_2 == _3) ? v_true : v_false;
  if (_2) goto _l109;
 {
  _1= v_self;
  _2= l_127;
  _line(400);
  _1=_send(s_error_, _1, _2);
 }
 _l109:;
  _1= v_arguments;
  _2= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(401);
  _2=_send(s_contents, _2);
  _line(401);
  _1=_send(s_add_, _1, _2);
  _1= v_self;
  _line(402);
  _1=_send(s_scan, _1);
 }
 _l108:;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_type;
  _2= l_125;
  _1= (_1 == _2) ? v_true : v_false;
 }
  if (_1) goto _l107;
  _1= 0;
  _1= v_self;
  _2= v_arguments;
  _line(403);
  _1=_send(s_parseVarParams_, _1, _2);
 }
  goto _l106;
 _l105:;
 {
  /* ifTrue:ifFalse: */
  _1= ((struct t_Parser *)v_stateful_self)->v_type;
  _2= l_128;
  _1= (_1 == _2) ? v_true : v_false;
  if (!_1) goto _l110;
 {
  _1= v_selector;
  _2= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(407);
  _2=_send(s_contents, _2);
  _line(407);
  _1=_send(s__2c, _1, _2);
  v_selector= _1;
  _1= v_self;
  _line(408);
  _1=_send(s_scan, _1);
  /* ifFalse: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_126;
  _2= (_2 == _3) ? v_true : v_false;
  if (_2) goto _l112;
 {
  _1= v_self;
  _2= l_127;
  _line(409);
  _1=_send(s_error_, _1, _2);
 }
 _l112:;
  _1= v_arguments;
  _2= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(410);
  _2=_send(s_contents, _2);
  _line(410);
  _1=_send(s_add_, _1, _2);
  _1= v_self;
  _line(411);
  _1=_send(s_scan, _1);
 }
  goto _l111;
 _l110:;
 {
  /* ifTrue:ifFalse: */
  _1= ((struct t_Parser *)v_stateful_self)->v_type;
  _2= l_126;
  _1= (_1 == _2) ? v_true : v_false;
  if (!_1) goto _l113;
 {
  _1= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(415);
  _1=_send(s_contents, _1);
  v_selector= _1;
  _1= v_self;
  _line(416);
  _send(s_scan, _1);
  _2= v_arguments;
  _1=_send(s_parseVarParams_, _1, _2);
 }
  goto _l114;
 _l113:;
 {
  _1= v_self;
  _2= l_129;
  _line(418);
  _1=_send(s_error_, _1, _2);
 }
 _l114:;
 }
 _l111:;
 }
 _l106:;
  _1= v_MethodNode;
  _2= v_typeName;
  _3= v_selector;
  _4= v_arguments;
  _5= v_position;
  _line(419);
  _1=_send(s_withType_selector_arguments_position_, _1, _2, _3, _4, _5);
  v_node= _1;
  _1= v_self;
  _2= l_130;
  _line(420);
  _1=_send(s_note_, _1, _2);
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_131;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l115;
 {
  _1= v_node;
  _line(423);
  _1=_send(s_beVariadic, _1);
  _1= v_self;
  _line(424);
  _1=_send(s_scan, _1);
 }
 _l115:;
  /* ifTrue:ifFalse: */
  _1= ((struct t_Parser *)v_stateful_self)->v_type;
  _2= l_132;
  _1= (_1 == _2) ? v_true : v_false;
  if (!_1) goto _l116;
 {
  _1= v_self;
  _line(427);
  _1=_send(s_scan, _1);
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_133;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l118;
 {
  _1= v_self;
  _2= v_arguments;
  _line(431);
  _1=_send(s_parseVarParams_, _1, _2);
  /* ifFalse: */
  _1= 0;
  /* and: */
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_128;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l120;
 {
  _2= ((struct t_Parser *)v_stateful_self)->v_token;
  _line(432);
  _2=_send(s_contents, _2);
  _3= l_134;
  if (1 & (int)_2 & (int)_3) {
    _2= (((int)_2 == (int)_3) ? v_true : v_false);
  } else _2= _send(s__3d, _2, _3);
 }
 _l120:;
  if (_2) goto _l119;
 {
  _1= v_self;
  _2= l_135;
  _line(433);
  _1=_send(s_error_, _1, _2);
 }
 _l119:;
  _1= v_self;
  _line(434);
  _1=_send(s_scan, _1);
 }
 _l118:;
  _1= v_self;
  _2= v_node;
  _line(436);
  _1=_send(s_parseSequence_, _1, _2);
 }
  goto _l117;
 _l116:;
 {
  /* ifTrue:ifFalse: */
  _1= ((struct t_Parser *)v_stateful_self)->v_type;
  _2= l_136;
  _1= (_1 == _2) ? v_true : v_false;
  if (!_1) goto _l121;
 {
  _1= v_node;
  _2= v_self;
  _line(438);
  _2=_send(s_parsePrimitive, _2);
  _line(438);
  _1=_send(s_external_, _1, _2);
 }
  goto _l122;
 _l121:;
 {
  _1= v_self;
  _2= l_137;
  _line(439);
  _1=_send(s_error_, _1, _2);
 }
 _l122:;
 }
 _l117:;
  _1= v_self;
  _2= l_138;
  _line(440);
  _1=_send(s_note_, _1, _2);
  _1= v_node;
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parseDefinition_(oop v__closure, oop v_stateful_self, oop v_self, oop v_name)
 {
  _enter("parseDefinition:", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_position= 0;
  oop v_node= 0;
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  oop _4= 0;
  (void)v_position;
  (void)v_node;
  _line(444);
  _1= v_self;
  _line(447);
  _1=_send(s_position, _1);
  v_position= _1;
  _1= v_self;
  _line(448);
  _1=_send(s_scan, _1);
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _3= l_139;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l123;
 {
  _1= v_DefinitionNode;
  _2= v_name;
  _3= v_self;
  _line(449);
  _3=_send(s_parseExec, _3);
  _4= v_position;
  _line(449);
  _1=_send(s_withName_exec_position_, _1, _2, _3, _4);
  v_node= _1;
  _leave();
  return _1;
 }
 _l123:;
  _1= v_self;
  _2= l_140;
  _line(450);
  _1=_send(s_error_, _1, _2);
  _1= v_self;
  _leave();
  return _1;
  _leave();
 }
static oop b_144(oop v__closure, oop v__self)
 {
  _enter("[]", "?", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_name= 0;
  oop _1= 0;
  oop _2= 0;
  (void)v_name;
  _line(459);
  _1= ((struct t_Parser *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1])->v_token;  /* token */
  _line(460);
  _1=_send(s_contents, _1);
  v_name= _1;
  _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _line(461);
  _1=_send(s_scan, _1);
  /* ifTrue:ifFalse: */
  /* or: */
  _1= ((struct t_Parser *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1])->v_type;  /* type */
  _2= l_146;
  _1= (_1 == _2) ? v_true : v_false;
  if (_1) goto _l126;
 {
  _1= ((struct t_Parser *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1])->v_type;  /* type */
  _2= l_147;
  _1= (_1 == _2) ? v_true : v_false;
 }
 _l126:;
  if (!_1) goto _l124;
 {
  _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _2= v_name;
  _line(463);
  _1=_send(s_parsePrototype_, _1, _2);
 }
  goto _l125;
 _l124:;
 {
  /* ifTrue:ifFalse: */
  _1= ((struct t_Parser *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1])->v_type;  /* type */
  _2= l_148;
  _1= (_1 == _2) ? v_true : v_false;
  if (!_1) goto _l127;
 {
  _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _2= v_name;
  _line(466);
  _1=_send(s_parseDefinition_, _1, _2);
 }
  goto _l128;
 _l127:;
 {
  _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2];  /* self */
  _2= v_name;
  _line(467);
  _1=_send(s_parseMethod_, _1, _2);
 }
 _l128:;
 }
 _l125:;
  _leave();
  return _nlreturn(((struct t_BlockClosure *)v__self)->v__nlr, _1);
  _leave();
 }
static oop Parser__parseDeclaration(oop v__closure, oop v_stateful_self, oop v_self)
 {
  _enter("parseDeclaration", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop _state1= _send(s_new_5f_, v__vector, 12);
  oop _1= 0;
  oop _2= 0;
  oop _3= 0;
  jmp_buf __nlr;
  oop _nlr;
  ((oop *)_state1)[1]= v_stateful_self;
  ((oop *)_state1)[2]= v_self;
  _nlr= (oop)&__nlr;
  if (setjmp(__nlr)) { return _nlresult(); }
  _line(453);
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)((oop *)_state1)[1])->v_type;  /* type */
  _3= l_141;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l129;
 {
  _1= ((oop *)_state1)[2];  /* self */
  _line(455);
  _1=_send(s_parseExtern, _1);
  _leave();
  return _1;
 }
 _l129:;
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)((oop *)_state1)[1])->v_type;  /* type */
  _3= l_142;
  _2= (_2 == _3) ? v_true : v_false;
  if (!_2) goto _l130;
 {
  _1= ((oop *)_state1)[2];  /* self */
  _line(456);
  _1=_send(s_parseExec, _1);
  _leave();
  return _1;
 }
 _l130:;
  _1= ((struct t_Parser *)((oop *)_state1)[1])->v_type;  /* type */
  _2= l_143;
  _1= (_1 == _2) ? v_true : v_false;
  /* Scope('name'->TemporaryVariableNode) */
  /* Scope('context'->SlotVariableNode 'token'->SlotVariableNode 'prevHash'->SlotVariableNode 'client'->SlotVariableNode 'type'->SlotVariableNode 'charEscapes'->SlotVariableNode 'stateful_self'->ArgumentVariableNode 'charTable'->SlotVariableNode 'self'->ArgumentVariableNode 'line'->SlotVariableNode 'c'->SlotVariableNode) */
  /* nil */
  /* 2 */
  /* 1 */
  _2= _send(s_function_5f_arity_5f_outer_state_nlr_5f_, v_BlockClosure, (oop)b_144, 0, 0, ((oop *)_state1), _nlr);
  _line(458);
  _1=_send(s_ifTrue_, _1, _2);
  _1= ((oop *)_state1)[2];  /* self */
  _2= l_145;
  _line(468);
  _1=_send(s_error_, _1, _2);
  _1= ((oop *)_state1)[2];  /* self */
  _leave();
  return _1;
  _leave();
 }
static oop Parser__parse(oop v__closure, oop v_stateful_self, oop v_self)
 {
  _enter("parse", "Parser", "/home/saintiss/source/svn/stIdst_278/object/idc/Parser.st");
  oop v_node= 0;
  oop _1= 0;
  oop _2= 0;
  (void)v_node;
  _line(471);
  _1= v_nil;
  v_node= _1;
  /* whileTrue: */
  goto _l132;
 _l131:;
 {
  /* whileTrue: */
  goto _l134;
 _l133:;
 {
  _1= v_self;
  _line(478);
  _1=_send(s_scan, _1);
 }
 _l134:;
 {
  /* and: */
  _1= ((struct t_Parser *)v_stateful_self)->v_type;
  _line(478);
  _1=_send(s_isNil, _1);
  if (!_1) goto _l135;
 {
  _1= v_self;
  _line(478);
  _1=_send(s_atEnd, _1);
  _line(478);
  _1=_send(s_not, _1);
 }
 _l135:;
 }
  if (_1) goto _l133;
  _1= 0;
  /* ifTrue: */
  _1= 0;
  _2= ((struct t_Parser *)v_stateful_self)->v_type;
  _line(479);
  _2=_send(s_notNil, _2);
  if (!_2) goto _l136;
 {
  _1= v_self;
  _line(479);
  _1=_send(s_parseDeclaration, _1);
  v_node= _1;
 }
 _l136:;
 }
 _l132:;
 {
  /* and: */
  _1= v_node;
  _line(476);
  _1=_send(s_isNil, _1);
  if (!_1) goto _l137;
 {
  /* or: */
  _1= ((struct t_Parser *)v_stateful_self)->v_type;
  _line(476);
  _1=_send(s_notNil, _1);
  if (_1) goto _l138;
 {
  _1= v_self;
  _line(476);
  _1=_send(s_atEnd, _1);
  _line(476);
  _1=_send(s_not, _1);
 }
 _l138:;
 }
 _l137:;
 }
  if (_1) goto _l131;
  _1= 0;
  _1= v_node;
  _leave();
  return _1;
  _leave();
 }

void __id__init__Parser(void)
{
  if (_local_object) return;
  { 
    dlhandle_t global= dlopen(0, RTLD_LAZY);
    _local_object= *(oop *)dlsym(global, "_libid_object");
    _local_param= dlsym(global, "_libid_param");
    _local_intern= dlsym(global, "_libid_intern");
    _local_proto= dlsym(global, "_libid_proto");
    _local_import= dlsym(global, "_libid_import");
    _local_export= dlsym(global, "_libid_export");
    _local_method= dlsym(global, "_libid_method");
    _local_alloc= dlsym(global, "_libid_alloc");
    _local_palloc= dlsym(global, "_libid_palloc");
    _local_balloc= dlsym(global, "_libid_balloc");
    _local_bind= dlsym(global, "_libid_bind");
    _local_nlreturn= dlsym(global, "_libid_nlreturn");
    _local_nlresult= dlsym(global, "_libid_nlresult");
    _local_enter= dlsym(global, "_libid_enter");
    _local_line= dlsym(global, "_libid_line");
    _local_leave= dlsym(global, "_libid_leave");
    _local_backtrace= dlsym(global, "_libid_backtrace");
    _local_tag_vtable= dlsym(global, "_libid_tag_vtable");
    _local_nil_vtable= dlsym(global, "_libid_nil_vtable");
    _local_gc_addRoots= dlsym(global, "GC_add_roots");
    _local_gc_unregisterDisappearingLink= dlsym(global, "GC_unregister_disappearing_link");
    _local_gc_generalRegisterDisappearingLink= dlsym(global, "GC_general_register_disappearing_link");
    _local_gc_gcollect= dlsym(global, "GC_gcollect");
    dlclose(global);
  }
# define GC_add_roots _local_gc_addRoots
  GC_INIT();
  {
    struct _Selector *s= 0;
    for (s= _Selectors;  s->name;  ++s)
      *s->addr= _selector(s->name);
  }
  _enter("__id__init__", "<initialisation>", "Parser.st");

  _send(s__5fimport_, _local_object, "Scanner", "__id__init__Scanner");
  _send(s__5fimport_, _local_object, "Object", "__id__init__Object");
  _send(s__5fimport_, _local_object, "_object", "__id__init___5fobject");
  v__object= _id_import("_object");
  v__vector= _id_import("_vector");
  v_Object= _id_import("Object");
  v_UndefinedObject= _id_import("UndefinedObject");
  v_StaticBlockClosure= _id_import("StaticBlockClosure");
  v_BlockClosure= _id_import("BlockClosure");
  v_Magnitude= _id_import("Magnitude");
  v_Character= _id_import("Character");
  v_Number= _id_import("Number");
  v_Integer= _id_import("Integer");
  v_SmallInteger= _id_import("SmallInteger");
  v_LargePositiveInteger= _id_import("LargePositiveInteger");
  v_Collection= _id_import("Collection");
  v_SequenceableCollection= _id_import("SequenceableCollection");
  v_ArrayedCollection= _id_import("ArrayedCollection");
  v_Array= _id_import("Array");
  v_ImmutableArray= _id_import("ImmutableArray");
  v_WordArray= _id_import("WordArray");
  v_ByteArray= _id_import("ByteArray");
  v_String= _id_import("String");
  v_ImmutableString= _id_import("ImmutableString");
  v_Symbol= _id_import("Symbol");
  v_nil= _id_import("nil");
  v_true= _id_import("true");
  v_false= _id_import("false");
  _send(s__5fimport_, _local_object, "BlockClosure", "__id__init__BlockClosure");
  _send(s__5fimport_, _local_object, "SmallInteger", "__id__init__SmallInteger");
  _send(s__5fimport_, _local_object, "Integer", "__id__init__Integer");
  _send(s__5fimport_, _local_object, "Number", "__id__init__Number");
  _send(s__5fimport_, _local_object, "Magnitude", "__id__init__Magnitude");
  _send(s__5fimport_, _local_object, "Array", "__id__init__Array");
  _send(s__5fimport_, _local_object, "ArrayedCollection", "__id__init__ArrayedCollection");
  _send(s__5fimport_, _local_object, "SequenceableCollection", "__id__init__SequenceableCollection");
  _send(s__5fimport_, _local_object, "Collection", "__id__init__Collection");
  _send(s__5fimport_, _local_object, "Character", "__id__init__Character");
  _send(s__5fimport_, _local_object, "String", "__id__init__String");
  _send(s__5fimport_, _local_object, "ByteArray", "__id__init__ByteArray");
  _send(s__5fimport_, _local_object, "WordArray", "__id__init__WordArray");
  _send(s__5fimport_, _local_object, "IdentityDictionary", "__id__init__IdentityDictionary");
  _send(s__5fimport_, _local_object, "Dictionary", "__id__init__Dictionary");
  _send(s__5fimport_, _local_object, "Set", "__id__init__Set");
  v_Set= _id_import("Set");
  _send(s__5fimport_, _local_object, "Association", "__id__init__Association");
  _send(s__5fimport_, _local_object, "LookupKey", "__id__init__LookupKey");
  v_LookupKey= _id_import("LookupKey");
  _send(s__5fimport_, _local_object, "OrderedCollection", "__id__init__OrderedCollection");
  v_OrderedCollection= _id_import("OrderedCollection");
  v_Dictionary= _id_import("Dictionary");
  _send(s__5fimport_, _local_object, "IdentitySet", "__id__init__IdentitySet");
  v_IdentityDictionary= _id_import("IdentityDictionary");
  _send(s__5fimport_, _local_object, "WriteStream", "__id__init__WriteStream");
  _send(s__5fimport_, _local_object, "PositionableStream", "__id__init__PositionableStream");
  _send(s__5fimport_, _local_object, "Stream", "__id__init__Stream");
  v_Stream= _id_import("Stream");
  v_PositionableStream= _id_import("PositionableStream");
  _send(s__5fimport_, _local_object, "ScannerPosition", "__id__init__ScannerPosition");
  _send(s__5fimport_, _local_object, "Symbol", "__id__init__Symbol");
  v_Scanner= _id_import("Scanner");
  _send(s__5fimport_, _local_object, "ByteArrayNode", "__id__init__ByteArrayNode");
  _send(s__5fimport_, _local_object, "ArrayLiteralNode", "__id__init__ArrayLiteralNode");
  _send(s__5fimport_, _local_object, "LiteralNode", "__id__init__LiteralNode");
  _send(s__5fimport_, _local_object, "ParseNode", "__id__init__ParseNode");
  v_ParseNode= _id_import("ParseNode");
  v_LiteralNode= _id_import("LiteralNode");
  v_ArrayLiteralNode= _id_import("ArrayLiteralNode");
  v_ByteArrayNode= _id_import("ByteArrayNode");
  _send(s__5fimport_, _local_object, "WordArrayNode", "__id__init__WordArrayNode");
  v_WordArrayNode= _id_import("WordArrayNode");
  _send(s__5fimport_, _local_object, "ArrayNode", "__id__init__ArrayNode");
  v_ArrayNode= _id_import("ArrayNode");
  _send(s__5fimport_, _local_object, "SymbolNode", "__id__init__SymbolNode");
  v_SymbolNode= _id_import("SymbolNode");
  _send(s__5fimport_, _local_object, "StringNode", "__id__init__StringNode");
  v_StringNode= _id_import("StringNode");
  _send(s__5fimport_, _local_object, "IntegerNode", "__id__init__IntegerNode");
  v_IntegerNode= _id_import("IntegerNode");
  _send(s__5fimport_, _local_object, "FloatNode", "__id__init__FloatNode");
  v_FloatNode= _id_import("FloatNode");
  _send(s__5fimport_, _local_object, "CharacterNode", "__id__init__CharacterNode");
  v_CharacterNode= _id_import("CharacterNode");
  _send(s__5fimport_, _local_object, "VariableNode", "__id__init__VariableNode");
  v_VariableNode= _id_import("VariableNode");
  _send(s__5fimport_, _local_object, "VarargNode", "__id__init__VarargNode");
  v_VarargNode= _id_import("VarargNode");
  _send(s__5fimport_, _local_object, "SendNode", "__id__init__SendNode");
  v_SendNode= _id_import("SendNode");
  _send(s__5fimport_, _local_object, "AssignmentNode", "__id__init__AssignmentNode");
  v_AssignmentNode= _id_import("AssignmentNode");
  _send(s__5fimport_, _local_object, "ReturnNode", "__id__init__ReturnNode");
  v_ReturnNode= _id_import("ReturnNode");
  _send(s__5fimport_, _local_object, "BlockNode", "__id__init__BlockNode");
  _send(s__5fimport_, _local_object, "SequenceNode", "__id__init__SequenceNode");
  v_SequenceNode= _id_import("SequenceNode");
  v_BlockNode= _id_import("BlockNode");
  _send(s__5fimport_, _local_object, "MethodNode", "__id__init__MethodNode");
  v_MethodNode= _id_import("MethodNode");
  _send(s__5fimport_, _local_object, "ExecNode", "__id__init__ExecNode");
  v_ExecNode= _id_import("ExecNode");
  _send(s__5fimport_, _local_object, "IncludeNode", "__id__init__IncludeNode");
  v_IncludeNode= _id_import("IncludeNode");
  _send(s__5fimport_, _local_object, "ImportNode", "__id__init__ImportNode");
  _send(s__5fimport_, _local_object, "ExternNode", "__id__init__ExternNode");
  v_ExternNode= _id_import("ExternNode");
  _send(s__5fimport_, _local_object, "PrimitiveNode", "__id__init__PrimitiveNode");
  v_PrimitiveNode= _id_import("PrimitiveNode");
  _send(s__5fimport_, _local_object, "PrototypeNode", "__id__init__PrototypeNode");
  v_PrototypeNode= _id_import("PrototypeNode");
  _send(s__5fimport_, _local_object, "DefinitionNode", "__id__init__DefinitionNode");
  v_DefinitionNode= _id_import("DefinitionNode");
  _send(s__5fimport_, _local_object, "perform", "__id__init__perform");
  _send(s__5fimport_, _local_object, "tokenization", "__id__init__tokenization");
  v_Parser= _proto(v_Scanner);
  _method(v_Parser, s__5fsizeof, Parser___5fsizeof);
  _method(v_Parser, s__5fdebugName, Parser___5fdebugName);
  _id_export("Parser", v_Parser);
  _method(v_Parser, s_on_notifying_, Parser__on_notifying_);
  _method(v_Parser, s_note_, Parser__note_);
  l_1= _send(s_size_5f_value_5f_, v_ImmutableString, 7, " near '");
  l_2= _send(s_size_5f_value_5f_, v_ImmutableString, 1, "'");
  _method(v_Parser, s_error_, Parser__error_);
  l_3= _send(s_size_5f_value_5f_, v_Symbol, 1, "]");
  l_4= _send(s_size_5f_value_5f_, v_ImmutableString, 18, "PARSE_BYTE_ARRAY-1");
  l_5= _send(s_size_5f_value_5f_, v_Symbol, 7, "integer");
  l_6= _send(s_size_5f_value_5f_, v_ImmutableString, 36, "ByteArrays can only contain integers");
  l_7= _send(s_value_5f_, v_SmallInteger, 0);
  l_8= _send(s_value_5f_, v_SmallInteger, 255);
  l_9= _send(s_size_5f_value_5f_, v_ImmutableString, 39, "ByteArray element not between 0 and 255");
  _method(v_Parser, s_parseByteArray, Parser__parseByteArray);
  l_10= _send(s_size_5f_value_5f_, v_Symbol, 1, "}");
  l_11= _send(s_size_5f_value_5f_, v_ImmutableString, 18, "PARSE_WORD_ARRAY-1");
  l_12= _send(s_size_5f_value_5f_, v_Symbol, 7, "integer");
  l_13= _send(s_size_5f_value_5f_, v_ImmutableString, 36, "WordArrays can only contain integers");
  _method(v_Parser, s_parseWordArray, Parser__parseWordArray);
  l_14= _send(s_size_5f_value_5f_, v_Symbol, 10, "identifier");
  l_15= _send(s_size_5f_value_5f_, v_Symbol, 6, "binary");
  l_16= _send(s_size_5f_value_5f_, v_Symbol, 7, "keyword");
  l_17= _send(s_size_5f_value_5f_, v_ImmutableArray, 3, al_17);
  l_18= _send(s_size_5f_value_5f_, v_Symbol, 1, ":");
  l_19= _send(s_size_5f_value_5f_, v_ImmutableString, 21, "PARSE_ARRAY_LITERAL-1");
  l_20= _send(s_size_5f_value_5f_, v_Symbol, 1, "(");
  _method(v_Parser, s_parseArrayLiteral, Parser__parseArrayLiteral);
  l_21= _send(s_size_5f_value_5f_, v_ImmutableString, 7, "ARRAY-1");
  l_22= _send(s_size_5f_value_5f_, v_Symbol, 1, ")");
  l_23= _send(s_size_5f_value_5f_, v_ImmutableString, 36, "')' expected at end of literal Array");
  _method(v_Parser, s_parseArray, Parser__parseArray);
  l_24= _send(s_size_5f_value_5f_, v_ImmutableString, 9, "LITERAL-1");
  l_25= _send(s_size_5f_value_5f_, v_Symbol, 7, "integer");
  l_27= _send(s_size_5f_value_5f_, v_Symbol, 5, "float");
  l_29= _send(s_size_5f_value_5f_, v_Symbol, 6, "string");
  l_31= _send(s_size_5f_value_5f_, v_Symbol, 9, "character");
  l_33= _send(s_size_5f_value_5f_, v_ImmutableString, 9, "LITERAL-2");
  l_34= _send(s_size_5f_value_5f_, v_Symbol, 1, "#");
  l_35= _send(s_size_5f_value_5f_, v_ImmutableString, 9, "LITERAL-3");
  l_36= _send(s_size_5f_value_5f_, v_Symbol, 10, "identifier");
  l_37= _send(s_size_5f_value_5f_, v_Symbol, 6, "binary");
  l_38= _send(s_size_5f_value_5f_, v_Symbol, 7, "keyword");
  l_39= _send(s_size_5f_value_5f_, v_ImmutableArray, 4, al_39);
  l_41= _send(s_size_5f_value_5f_, v_ImmutableString, 9, "LITERAL-4");
  l_42= _send(s_size_5f_value_5f_, v_Symbol, 1, "(");
  l_43= _send(s_size_5f_value_5f_, v_Symbol, 1, "{");
  l_44= _send(s_size_5f_value_5f_, v_Symbol, 1, "[");
  l_45= _send(s_size_5f_value_5f_, v_ImmutableString, 29, "illegal literal following '#'");
  _method(v_Parser, s_parseLiteralP, Parser__parseLiteralP);
  l_46= _send(s_size_5f_value_5f_, v_ImmutableString, 9, "PRIMARY-1");
  l_47= _send(s_size_5f_value_5f_, v_Symbol, 10, "identifier");
  l_48= _send(s_size_5f_value_5f_, v_Symbol, 1, "(");
  l_49= _send(s_size_5f_value_5f_, v_Symbol, 1, ")");
  l_50= _send(s_size_5f_value_5f_, v_ImmutableString, 12, "')' expected");
  l_51= _send(s_size_5f_value_5f_, v_Symbol, 1, "[");
  l_52= _send(s_size_5f_value_5f_, v_Symbol, 8, "ellipsis");
  l_53= _send(s_size_5f_value_5f_, v_ImmutableString, 9, "PRIMARY-2");
  l_54= _send(s_size_5f_value_5f_, v_ImmutableString, 9, "PRIMARY-3");
  l_55= _send(s_size_5f_value_5f_, v_ImmutableString, 13, "PRIMARY-ABORT");
  l_56= _send(s_size_5f_value_5f_, v_ImmutableString, 12, "syntax error");
  _method(v_Parser, s_parsePrimary, Parser__parsePrimary);
  l_57= _send(s_size_5f_value_5f_, v_Symbol, 10, "identifier");
  _method(v_Parser, s_parseUnary, Parser__parseUnary);
  l_58= _send(s_size_5f_value_5f_, v_Symbol, 6, "binary");
  _method(v_Parser, s_parseBinary, Parser__parseBinary);
  l_59= _send(s_size_5f_value_5f_, v_ImmutableString, 6, "EXPR-1");
  l_60= _send(s_size_5f_value_5f_, v_ImmutableString, 6, "EXPR-2");
  l_61= _send(s_size_5f_value_5f_, v_Symbol, 7, "keyword");
  l_62= _send(s_size_5f_value_5f_, v_ImmutableString, 6, "EXPR-3");
  l_63= _send(s_size_5f_value_5f_, v_Symbol, 1, ":");
  l_64= _send(s_size_5f_value_5f_, v_Symbol, 6, "assign");
  l_65= _send(s_size_5f_value_5f_, v_Symbol, 1, ";");
  l_66= _send(s_size_5f_value_5f_, v_ImmutableString, 38, "cascade does not follow a message send");
  l_69= _send(s_size_5f_value_5f_, v_ImmutableString, 0, "");
  l_70= _send(s_size_5f_value_5f_, v_Symbol, 6, "binary");
  l_71= _send(s_size_5f_value_5f_, v_Symbol, 10, "identifier");
  l_72= _send(s_size_5f_value_5f_, v_ImmutableString, 23, "syntax error in cascade");
  _method(v_Parser, s_parseExpression, Parser__parseExpression);
  l_73= _send(s_size_5f_value_5f_, v_Symbol, 10, "identifier");
  l_74= _send(s_size_5f_value_5f_, v_Symbol, 6, "binary");
  l_75= _send(s_size_5f_value_5f_, v_ImmutableString, 1, "|");
  l_76= _send(s_size_5f_value_5f_, v_ImmutableString, 41, "identifier or '|' expected in temporaries");
  _method(v_Parser, s_parseTemporaries_, Parser__parseTemporaries_);
  l_77= _send(s_size_5f_value_5f_, v_ImmutableString, 5, "SEQ-1");
  l_78= _send(s_size_5f_value_5f_, v_Symbol, 6, "binary");
  l_79= _send(s_size_5f_value_5f_, v_ImmutableString, 1, "|");
  l_80= _send(s_size_5f_value_5f_, v_ImmutableString, 5, "SEQ-2");
  l_81= _send(s_size_5f_value_5f_, v_Symbol, 1, "]");
  l_82= _send(s_size_5f_value_5f_, v_ImmutableString, 5, "SEQ-3");
  l_83= _send(s_size_5f_value_5f_, v_Symbol, 6, "extern");
  l_84= _send(s_size_5f_value_5f_, v_ImmutableString, 1, "^");
  l_85= _send(s_size_5f_value_5f_, v_Symbol, 1, ".");
  l_86= _send(s_size_5f_value_5f_, v_ImmutableString, 28, "'.' or ']' expected in block");
  l_87= _send(s_size_5f_value_5f_, v_ImmutableString, 28, "']' expected at end of block");
  l_88= _send(s_size_5f_value_5f_, v_ImmutableString, 5, "SEQ-4");
  l_89= _send(s_size_5f_value_5f_, v_ImmutableString, 5, "SEQ-5");
  _method(v_Parser, s_parseSequence_, Parser__parseSequence_);
  l_90= _send(s_size_5f_value_5f_, v_Symbol, 1, ":");
  l_91= _send(s_size_5f_value_5f_, v_Symbol, 10, "identifier");
  l_92= _send(s_size_5f_value_5f_, v_ImmutableString, 23, "parameter name expected");
  l_93= _send(s_size_5f_value_5f_, v_Symbol, 6, "binary");
  l_94= _send(s_size_5f_value_5f_, v_ImmutableString, 2, "||");
  l_95= _send(s_value_5f_, v_Character, 124);
  l_96= _send(s_size_5f_value_5f_, v_ImmutableString, 1, "|");
  l_97= _send(s_size_5f_value_5f_, v_ImmutableString, 39, "'|' expected at end of block parameters");
  _method(v_Parser, s_parseBlockParameters_, Parser__parseBlockParameters_);
  l_98= _send(s_size_5f_value_5f_, v_Symbol, 1, ":");
  _method(v_Parser, s_parseBlock, Parser__parseBlock);
  _method(v_Parser, s_parseExec, Parser__parseExec);
  l_99= _send(s_size_5f_value_5f_, v_ImmutableString, 8, " import:");
  l_100= _send(s_size_5f_value_5f_, v_ImmutableString, 1, " ");
  l_101= _send(s_size_5f_value_5f_, v_ImmutableString, 9, " include:");
  l_102= _send(s_size_5f_value_5f_, v_ImmutableString, 7, " input:");
  l_103= _send(s_size_5f_value_5f_, v_ImmutableString, 10, " include <");
  l_104= _send(s_size_5f_value_5f_, v_ImmutableString, 1, "<");
  l_105= _send(s_size_5f_value_5f_, v_ImmutableString, 3, " <>");
  l_106= _send(s_size_5f_value_5f_, v_ImmutableString, 1, ">");
  l_107= _send(s_size_5f_value_5f_, v_ImmutableString, 10, " include \"");
  l_108= _send(s_size_5f_value_5f_, v_ImmutableString, 1, "\"");
  l_109= _send(s_size_5f_value_5f_, v_ImmutableString, 2, " \"");
  l_110= _send(s_size_5f_value_5f_, v_ImmutableString, 8, " pragma:");
  l_111= _send(s_size_5f_value_5f_, v_ImmutableString, 10, " external ");
  l_112= _send(s_size_5f_value_5f_, v_ImmutableString, 10, " internal ");
  _method(v_Parser, s_parseExtern, Parser__parseExtern);
  _method(v_Parser, s_parsePrimitive, Parser__parsePrimitive);
  l_113= _send(s_size_5f_value_5f_, v_Symbol, 1, ":");
  l_114= _send(s_size_5f_value_5f_, v_Symbol, 10, "identifier");
  l_115= _send(s_size_5f_value_5f_, v_ImmutableString, 38, "base type name expected in declaration");
  l_116= _send(s_size_5f_value_5f_, v_Symbol, 1, "(");
  l_117= _send(s_size_5f_value_5f_, v_ImmutableString, 39, "slot names expected in type declaration");
  l_118= _send(s_size_5f_value_5f_, v_Symbol, 1, ")");
  l_119= _send(s_size_5f_value_5f_, v_ImmutableString, 49, "')' expected after slot names in type declaration");
  _method(v_Parser, s_parsePrototype_, Parser__parsePrototype_);
  l_120= _send(s_size_5f_value_5f_, v_Symbol, 1, ":");
  l_121= _send(s_size_5f_value_5f_, v_Symbol, 10, "identifier");
  l_122= _send(s_size_5f_value_5f_, v_ImmutableString, 23, "parameter name expected");
  _method(v_Parser, s_parseVarParams_, Parser__parseVarParams_);
  l_123= _send(s_size_5f_value_5f_, v_ImmutableString, 8, "METHOD-1");
  l_124= _send(s_size_5f_value_5f_, v_ImmutableString, 0, "");
  l_125= _send(s_size_5f_value_5f_, v_Symbol, 7, "keyword");
  l_126= _send(s_size_5f_value_5f_, v_Symbol, 10, "identifier");
  l_127= _send(s_size_5f_value_5f_, v_ImmutableString, 22, "missing parameter name");
  l_128= _send(s_size_5f_value_5f_, v_Symbol, 6, "binary");
  l_129= _send(s_size_5f_value_5f_, v_ImmutableString, 23, "method pattern expected");
  l_130= _send(s_size_5f_value_5f_, v_ImmutableString, 8, "METHOD-2");
  l_131= _send(s_size_5f_value_5f_, v_Symbol, 8, "ellipsis");
  l_132= _send(s_size_5f_value_5f_, v_Symbol, 1, "[");
  l_133= _send(s_size_5f_value_5f_, v_Symbol, 1, ":");
  l_134= _send(s_size_5f_value_5f_, v_ImmutableString, 1, "|");
  l_135= _send(s_size_5f_value_5f_, v_ImmutableString, 34, "'|' expected after block arguments");
  l_136= _send(s_size_5f_value_5f_, v_Symbol, 6, "extern");
  l_137= _send(s_size_5f_value_5f_, v_ImmutableString, 20, "method body expected");
  l_138= _send(s_size_5f_value_5f_, v_ImmutableString, 8, "METHOD-3");
  _method(v_Parser, s_parseMethod_, Parser__parseMethod_);
  l_139= _send(s_size_5f_value_5f_, v_Symbol, 1, "[");
  l_140= _send(s_size_5f_value_5f_, v_ImmutableString, 22, "literal block expected");
  _method(v_Parser, s_parseDefinition_, Parser__parseDefinition_);
  l_141= _send(s_size_5f_value_5f_, v_Symbol, 6, "extern");
  l_142= _send(s_size_5f_value_5f_, v_Symbol, 1, "[");
  l_143= _send(s_size_5f_value_5f_, v_Symbol, 10, "identifier");
  l_145= _send(s_size_5f_value_5f_, v_ImmutableString, 12, "syntax error");
  l_146= _send(s_size_5f_value_5f_, v_Symbol, 1, ":");
  l_147= _send(s_size_5f_value_5f_, v_Symbol, 1, "(");
  l_148= _send(s_size_5f_value_5f_, v_Symbol, 6, "assign");
  _method(v_Parser, s_parseDeclaration, Parser__parseDeclaration);
  _method(v_Parser, s_parse, Parser__parse);
  _leave();
}
