/*
 * This file is loading the irep
 * Ruby GEM code.
 *
 * This file was generated by mruby/lib/mruby/gem.rb.
 *
 * IMPORTANT:
 *   This file was generated!
 *   All manual changes will get lost.
 */
#include <stdlib.h>
#include <mruby.h>
#include <mruby/irep.h>
#include <mruby/debug.h>
#include <mruby/proc.h>
#include <mruby/presym.h>

#define mrb_BRACED(...) {__VA_ARGS__}
#define mrb_DEFINE_SYMS_VAR(name, len, syms, qualifier) \
  static qualifier mrb_sym name[len] = mrb_BRACED syms

mrb_DEFINE_SYMS_VAR(gem_mrblib_mruby_struct_proc_syms_6, 1, (MRB_SYM(call), ), const);
static const mrb_code gem_mrblib_mruby_struct_proc_iseq_6[21] = {
0x34,0x04,0x00,0x00,0x21,0x03,0x01,0x00,0x12,0x04,0x01,0x05,0x01,0x23,0x04,0x2f,0x03,0x00,0x01,0x38,
0x03,};
mrb_DEFINE_SYMS_VAR(gem_mrblib_mruby_struct_proc_lv_6, 2, (MRB_SYM(field), 0,), const);
static const mrb_irep gem_mrblib_mruby_struct_proc_irep_6 = {
  3,7,0,
  MRB_IREP_STATIC,gem_mrblib_mruby_struct_proc_iseq_6,
  NULL,gem_mrblib_mruby_struct_proc_syms_6,NULL,
  gem_mrblib_mruby_struct_proc_lv_6,
  NULL,					/* debug_info */
  21,0,1,0,0
};
static const mrb_irep *gem_mrblib_mruby_struct_proc_reps_2[1] = {
  &gem_mrblib_mruby_struct_proc_irep_6,
};
mrb_DEFINE_SYMS_VAR(gem_mrblib_mruby_struct_proc_syms_2, 3, (MRB_SYM(class), MRB_SYM(members), MRB_SYM(each), ), const);
static const mrb_code gem_mrblib_mruby_struct_proc_iseq_2[25] = {
0x34,0x00,0x00,0x01,0x12,0x02,0x2f,0x02,0x00,0x00,0x2f,0x02,0x01,0x00,0x57,0x03,0x00,0x30,0x02,0x02,
0x00,0x12,0x02,0x38,0x02,};
mrb_DEFINE_SYMS_VAR(gem_mrblib_mruby_struct_proc_lv_2, 1, (MRB_SYM(block), ), const);
static const mrb_irep gem_mrblib_mruby_struct_proc_irep_2 = {
  2,4,0,
  MRB_IREP_STATIC,gem_mrblib_mruby_struct_proc_iseq_2,
  NULL,gem_mrblib_mruby_struct_proc_syms_2,gem_mrblib_mruby_struct_proc_reps_2,
  gem_mrblib_mruby_struct_proc_lv_2,
  NULL,					/* debug_info */
  25,0,3,1,0
};
mrb_DEFINE_SYMS_VAR(gem_mrblib_mruby_struct_proc_syms_11, 2, (MRB_SYM(to_sym), MRB_SYM(call), ), const);
static const mrb_code gem_mrblib_mruby_struct_proc_iseq_11[28] = {
0x34,0x04,0x00,0x00,0x21,0x03,0x01,0x00,0x01,0x04,0x01,0x2f,0x04,0x00,0x00,0x12,0x05,0x01,0x06,0x01,
0x23,0x05,0x2f,0x03,0x01,0x02,0x38,0x03,};
mrb_DEFINE_SYMS_VAR(gem_mrblib_mruby_struct_proc_lv_11, 2, (MRB_SYM(field), 0,), const);
static const mrb_irep gem_mrblib_mruby_struct_proc_irep_11 = {
  3,8,0,
  MRB_IREP_STATIC,gem_mrblib_mruby_struct_proc_iseq_11,
  NULL,gem_mrblib_mruby_struct_proc_syms_11,NULL,
  gem_mrblib_mruby_struct_proc_lv_11,
  NULL,					/* debug_info */
  28,0,2,0,0
};
static const mrb_irep *gem_mrblib_mruby_struct_proc_reps_3[1] = {
  &gem_mrblib_mruby_struct_proc_irep_11,
};
mrb_DEFINE_SYMS_VAR(gem_mrblib_mruby_struct_proc_syms_3, 3, (MRB_SYM(class), MRB_SYM(members), MRB_SYM(each), ), const);
static const mrb_code gem_mrblib_mruby_struct_proc_iseq_3[25] = {
0x34,0x00,0x00,0x01,0x12,0x02,0x2f,0x02,0x00,0x00,0x2f,0x02,0x01,0x00,0x57,0x03,0x00,0x30,0x02,0x02,
0x00,0x12,0x02,0x38,0x02,};
mrb_DEFINE_SYMS_VAR(gem_mrblib_mruby_struct_proc_lv_3, 1, (MRB_SYM(block), ), const);
static const mrb_irep gem_mrblib_mruby_struct_proc_irep_3 = {
  2,4,0,
  MRB_IREP_STATIC,gem_mrblib_mruby_struct_proc_iseq_3,
  NULL,gem_mrblib_mruby_struct_proc_syms_3,gem_mrblib_mruby_struct_proc_reps_3,
  gem_mrblib_mruby_struct_proc_lv_3,
  NULL,					/* debug_info */
  25,0,3,1,0
};
mrb_DEFINE_SYMS_VAR(gem_mrblib_mruby_struct_proc_syms_16, 2, (MRB_SYM(call), MRB_SYM(push), ), const);
static const mrb_code gem_mrblib_mruby_struct_proc_iseq_16[47] = {
0x34,0x04,0x00,0x00,0x12,0x04,0x01,0x05,0x01,0x23,0x04,0x01,0x03,0x04,0x21,0x04,0x01,0x00,0x01,0x05,
0x03,0x2f,0x04,0x00,0x01,0x27,0x04,0x00,0x0e,0x21,0x04,0x02,0x00,0x01,0x05,0x03,0x2f,0x04,0x01,0x01,
0x25,0x00,0x02,0x11,0x04,0x38,0x04,};
mrb_DEFINE_SYMS_VAR(gem_mrblib_mruby_struct_proc_lv_16, 3, (MRB_SYM(field), 0,MRB_SYM(val), ), const);
static const mrb_irep gem_mrblib_mruby_struct_proc_irep_16 = {
  4,7,0,
  MRB_IREP_STATIC,gem_mrblib_mruby_struct_proc_iseq_16,
  NULL,gem_mrblib_mruby_struct_proc_syms_16,NULL,
  gem_mrblib_mruby_struct_proc_lv_16,
  NULL,					/* debug_info */
  47,0,2,0,0
};
static const mrb_irep *gem_mrblib_mruby_struct_proc_reps_4[1] = {
  &gem_mrblib_mruby_struct_proc_irep_16,
};
mrb_DEFINE_SYMS_VAR(gem_mrblib_mruby_struct_proc_syms_4, 3, (MRB_SYM(class), MRB_SYM(members), MRB_SYM(each), ), const);
static const mrb_code gem_mrblib_mruby_struct_proc_iseq_4[26] = {
0x34,0x00,0x00,0x01,0x47,0x02,0x00,0x12,0x03,0x2f,0x03,0x00,0x00,0x2f,0x03,0x01,0x00,0x57,0x04,0x00,
0x30,0x03,0x02,0x00,0x38,0x02,};
mrb_DEFINE_SYMS_VAR(gem_mrblib_mruby_struct_proc_lv_4, 2, (MRB_SYM(block), MRB_SYM(ary), ), const);
static const mrb_irep gem_mrblib_mruby_struct_proc_irep_4 = {
  3,5,0,
  MRB_IREP_STATIC,gem_mrblib_mruby_struct_proc_iseq_4,
  NULL,gem_mrblib_mruby_struct_proc_syms_4,gem_mrblib_mruby_struct_proc_reps_4,
  gem_mrblib_mruby_struct_proc_lv_4,
  NULL,					/* debug_info */
  26,0,3,1,0
};
mrb_DEFINE_SYMS_VAR(gem_mrblib_mruby_struct_proc_syms_5, 2, (MRB_SYM(size), MRB_SYM(dig), ), const);
static const mrb_code gem_mrblib_mruby_struct_proc_iseq_5[58] = {
0x34,0x04,0x10,0x00,0x12,0x05,0x01,0x06,0x01,0x23,0x05,0x01,0x04,0x05,0x01,0x05,0x02,0x2f,0x05,0x00,
0x00,0x06,0x06,0x45,0x05,0x27,0x05,0x00,0x18,0x01,0x05,0x04,0x01,0x06,0x05,0x28,0x06,0x00,0x0b,0x11,
0x06,0x01,0x07,0x02,0x49,0x06,0x2f,0x05,0x01,0x0f,0x25,0x00,0x03,0x01,0x05,0x04,0x38,0x05,};
mrb_DEFINE_SYMS_VAR(gem_mrblib_mruby_struct_proc_lv_5, 4, (MRB_SYM(idx), MRB_SYM(args), 0,MRB_SYM(n), ), const);
static const mrb_irep gem_mrblib_mruby_struct_proc_irep_5 = {
  5,8,0,
  MRB_IREP_STATIC,gem_mrblib_mruby_struct_proc_iseq_5,
  NULL,gem_mrblib_mruby_struct_proc_syms_5,NULL,
  gem_mrblib_mruby_struct_proc_lv_5,
  NULL,					/* debug_info */
  58,0,2,0,0
};
static const mrb_irep *gem_mrblib_mruby_struct_proc_reps_1[4] = {
  &gem_mrblib_mruby_struct_proc_irep_2,
  &gem_mrblib_mruby_struct_proc_irep_3,
  &gem_mrblib_mruby_struct_proc_irep_4,
  &gem_mrblib_mruby_struct_proc_irep_5,
};
mrb_DEFINE_SYMS_VAR(gem_mrblib_mruby_struct_proc_syms_1, 8, (MRB_SYM(Enumerable), MRB_SYM(include), MRB_SYM(each), MRB_SYM(each_pair), MRB_SYM(select), MRB_SYM(to_s), MRB_SYM(inspect), MRB_SYM(dig), ), const);
static const mrb_code gem_mrblib_mruby_struct_proc_iseq_1[44] = {
0x1d,0x02,0x00,0x2d,0x01,0x01,0x01,0x63,0x01,0x58,0x02,0x00,0x5f,0x01,0x02,0x63,0x01,0x58,0x02,0x01,
0x5f,0x01,0x03,0x63,0x01,0x58,0x02,0x02,0x5f,0x01,0x04,0x60,0x05,0x06,0x63,0x01,0x58,0x02,0x03,0x5f,
0x01,0x07,0x38,0x01,};
static const mrb_irep gem_mrblib_mruby_struct_proc_irep_1 = {
  1,4,0,
  MRB_IREP_STATIC,gem_mrblib_mruby_struct_proc_iseq_1,
  NULL,gem_mrblib_mruby_struct_proc_syms_1,gem_mrblib_mruby_struct_proc_reps_1,
  NULL,					/* lv */
  NULL,					/* debug_info */
  44,0,8,4,0
};
static const mrb_irep *gem_mrblib_mruby_struct_proc_reps_0[1] = {
  &gem_mrblib_mruby_struct_proc_irep_1,
};
mrb_DEFINE_SYMS_VAR(gem_mrblib_mruby_struct_proc_syms_0, 1, (MRB_SYM(Struct), ), const);
static const mrb_code gem_mrblib_mruby_struct_proc_iseq_0[13] = {
0x11,0x01,0x11,0x02,0x5c,0x01,0x00,0x5e,0x01,0x00,0x38,0x01,0x69,};
static const mrb_irep gem_mrblib_mruby_struct_proc_irep_0 = {
  1,3,0,
  MRB_IREP_STATIC,gem_mrblib_mruby_struct_proc_iseq_0,
  NULL,gem_mrblib_mruby_struct_proc_syms_0,gem_mrblib_mruby_struct_proc_reps_0,
  NULL,					/* lv */
  NULL,					/* debug_info */
  13,0,1,1,0
};
static
const struct RProc gem_mrblib_mruby_struct_proc[] = {{
NULL,NULL,MRB_TT_PROC,MRB_GC_RED,0,{&gem_mrblib_mruby_struct_proc_irep_0},NULL,{NULL},
}};
static void
gem_mrblib_mruby_struct_proc_init_syms(mrb_state *mrb)
{
}
void mrb_mruby_struct_gem_init(mrb_state *mrb);
void mrb_mruby_struct_gem_final(mrb_state *mrb);

void GENERATED_TMP_mrb_mruby_struct_gem_init(mrb_state *mrb) {
  gem_mrblib_mruby_struct_proc_init_syms(mrb);
  mrb_mruby_struct_gem_init(mrb);
  mrb_load_proc(mrb, gem_mrblib_mruby_struct_proc);
}

void GENERATED_TMP_mrb_mruby_struct_gem_final(mrb_state *mrb) {
  mrb_mruby_struct_gem_final(mrb);
}
