//COMPONENT
#x:open-namespace
public class #x:model-name  : dzn.Component {
  #x:enum-definer
  #x:port-declaration
  #x:variable-member-declare
  #x:reply-member-declare
  #x:formal-binding-lambda

  public #x:model-name (dzn.Locator locator, String name="", dzn.Meta parent=null)
    : base(locator, name, parent) {
    this.dzn_runtime.states[this].flushes = true;
    #x:variable-member-initializer
    #x:injected-member-initializer
    #x:provides-port-init
    #x:requires-port-init

    this.dzn_meta.requires = new List<dzn.port.Meta> {
      #x:requires-port-meta
    };
    #x:injected-require-initializer
    this.dzn_meta.children = new List<dzn.Meta> { };

    this.dzn_meta.ports_connected = new List<Action>
    {
      #x:port-check-bindings
    };

    #x:event-slot
    #x:valued-event-slot
  }

  #x:method
  #x:function

  public void check_bindings()
  {
    dzn.RuntimeHelper.check_bindings(this.dzn_meta);
  }
}
#x:close-namespace
//////////////////////////////////////////////////////////////////////