//Auto-generated by /usr/bin/smokegen. DO NOT EDIT.
#include <khtml_includes.h>

#include <smoke.h>
#include <khtml_smoke.h>

class __internal_SmokeClass {};

namespace __smokekhtml {

class x_DOM__HTMLLabelElement : public DOM::HTMLLabelElement, public __internal_SmokeClass {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    static void x_1(Smoke::Stack x) {
        // DOM::HTMLLabelElement* HTMLLabelElement()
        x_DOM__HTMLLabelElement* xret = new x_DOM__HTMLLabelElement();
        x[0].s_class = (void*)xret;
    }
    explicit x_DOM__HTMLLabelElement() : HTMLLabelElement() {}
    static void x_2(Smoke::Stack x) {
        // DOM::HTMLLabelElement* HTMLLabelElement(const DOM::HTMLLabelElement&)
        x_DOM__HTMLLabelElement* xret = new x_DOM__HTMLLabelElement(*(const DOM::HTMLLabelElement*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_DOM__HTMLLabelElement(const DOM::HTMLLabelElement& x1) : HTMLLabelElement(x1) {}
    static void x_3(Smoke::Stack x) {
        // DOM::HTMLLabelElement* HTMLLabelElement(const DOM::Node&)
        x_DOM__HTMLLabelElement* xret = new x_DOM__HTMLLabelElement(*(const DOM::Node*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_DOM__HTMLLabelElement(const DOM::Node& x1) : HTMLLabelElement(x1) {}
    void x_4(Smoke::Stack x) {
        // DOM::HTMLLabelElement& operator=(const DOM::HTMLLabelElement&)
        DOM::HTMLLabelElement& xret = this->DOM::HTMLLabelElement::operator=(*(const DOM::HTMLLabelElement*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_5(Smoke::Stack x) {
        // DOM::HTMLLabelElement& operator=(const DOM::Node&)
        DOM::HTMLLabelElement& xret = this->DOM::HTMLLabelElement::operator=(*(const DOM::Node*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_6(Smoke::Stack x) {
        // DOM::DOMString accessKey() const
        DOM::DOMString xret = ((const x_DOM__HTMLLabelElement*)this)->DOM::HTMLLabelElement::accessKey();
        x[0].s_class = (void*)new DOM::DOMString(xret);
    }
    void x_7(Smoke::Stack x) {
        // void setAccessKey(const DOM::DOMString&)
        this->DOM::HTMLLabelElement::setAccessKey(*(const DOM::DOMString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_8(Smoke::Stack x) {
        // DOM::DOMString htmlFor() const
        DOM::DOMString xret = ((const x_DOM__HTMLLabelElement*)this)->DOM::HTMLLabelElement::htmlFor();
        x[0].s_class = (void*)new DOM::DOMString(xret);
    }
    void x_9(Smoke::Stack x) {
        // void setHtmlFor(const DOM::DOMString&)
        this->DOM::HTMLLabelElement::setHtmlFor(*(const DOM::DOMString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    ~x_DOM__HTMLLabelElement() { this->_binding->deleted(69, (void*)this); }
};
void xcall_DOM__HTMLLabelElement(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_DOM__HTMLLabelElement *xself = (x_DOM__HTMLLabelElement*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_DOM__HTMLLabelElement::x_1(args);	break;
        case 2: x_DOM__HTMLLabelElement::x_2(args);	break;
        case 3: x_DOM__HTMLLabelElement::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: delete (DOM::HTMLLabelElement*)xself;	break;
    }
}
class x_DOM__HTMLLayerElement : public DOM::HTMLLayerElement, public __internal_SmokeClass {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    static void x_1(Smoke::Stack x) {
        // DOM::HTMLLayerElement* HTMLLayerElement()
        x_DOM__HTMLLayerElement* xret = new x_DOM__HTMLLayerElement();
        x[0].s_class = (void*)xret;
    }
    explicit x_DOM__HTMLLayerElement() : HTMLLayerElement() {}
    static void x_2(Smoke::Stack x) {
        // DOM::HTMLLayerElement* HTMLLayerElement(const DOM::HTMLLayerElement&)
        x_DOM__HTMLLayerElement* xret = new x_DOM__HTMLLayerElement(*(const DOM::HTMLLayerElement*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_DOM__HTMLLayerElement(const DOM::HTMLLayerElement& x1) : HTMLLayerElement(x1) {}
    static void x_3(Smoke::Stack x) {
        // DOM::HTMLLayerElement* HTMLLayerElement(const DOM::Node&)
        x_DOM__HTMLLayerElement* xret = new x_DOM__HTMLLayerElement(*(const DOM::Node*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_DOM__HTMLLayerElement(const DOM::Node& x1) : HTMLLayerElement(x1) {}
    void x_4(Smoke::Stack x) {
        // DOM::HTMLLayerElement& operator=(const DOM::HTMLLayerElement&)
        DOM::HTMLLayerElement& xret = this->DOM::HTMLLayerElement::operator=(*(const DOM::HTMLLayerElement*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_5(Smoke::Stack x) {
        // DOM::HTMLLayerElement& operator=(const DOM::Node&)
        DOM::HTMLLayerElement& xret = this->DOM::HTMLLayerElement::operator=(*(const DOM::Node*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_6(Smoke::Stack x) {
        // long top() const
        long xret = ((const x_DOM__HTMLLayerElement*)this)->DOM::HTMLLayerElement::top();
        x[0].s_long = xret;
    }
    void x_7(Smoke::Stack x) {
        // void setTop(long)
        this->DOM::HTMLLayerElement::setTop((long)x[1].s_long);
        (void)x; // noop (for compiler warning)
    }
    void x_8(Smoke::Stack x) {
        // long left() const
        long xret = ((const x_DOM__HTMLLayerElement*)this)->DOM::HTMLLayerElement::left();
        x[0].s_long = xret;
    }
    void x_9(Smoke::Stack x) {
        // void setLeft(long)
        this->DOM::HTMLLayerElement::setLeft((long)x[1].s_long);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // DOM::DOMString visibility() const
        DOM::DOMString xret = ((const x_DOM__HTMLLayerElement*)this)->DOM::HTMLLayerElement::visibility();
        x[0].s_class = (void*)new DOM::DOMString(xret);
    }
    void x_11(Smoke::Stack x) {
        // void setVisibility(const DOM::DOMString&)
        this->DOM::HTMLLayerElement::setVisibility(*(const DOM::DOMString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // DOM::DOMString bgColor() const
        DOM::DOMString xret = ((const x_DOM__HTMLLayerElement*)this)->DOM::HTMLLayerElement::bgColor();
        x[0].s_class = (void*)new DOM::DOMString(xret);
    }
    void x_13(Smoke::Stack x) {
        // void setBgColor(const DOM::DOMString&)
        this->DOM::HTMLLayerElement::setBgColor(*(const DOM::DOMString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // DOM::HTMLCollection layers() const
        DOM::HTMLCollection xret = ((const x_DOM__HTMLLayerElement*)this)->DOM::HTMLLayerElement::layers();
        x[0].s_class = (void*)new DOM::HTMLCollection(xret);
    }
    ~x_DOM__HTMLLayerElement() { this->_binding->deleted(70, (void*)this); }
};
void xcall_DOM__HTMLLayerElement(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_DOM__HTMLLayerElement *xself = (x_DOM__HTMLLayerElement*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_DOM__HTMLLayerElement::x_1(args);	break;
        case 2: x_DOM__HTMLLayerElement::x_2(args);	break;
        case 3: x_DOM__HTMLLayerElement::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: delete (DOM::HTMLLayerElement*)xself;	break;
    }
}
class x_DOM__HTMLLegendElement : public DOM::HTMLLegendElement, public __internal_SmokeClass {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    static void x_1(Smoke::Stack x) {
        // DOM::HTMLLegendElement* HTMLLegendElement()
        x_DOM__HTMLLegendElement* xret = new x_DOM__HTMLLegendElement();
        x[0].s_class = (void*)xret;
    }
    explicit x_DOM__HTMLLegendElement() : HTMLLegendElement() {}
    static void x_2(Smoke::Stack x) {
        // DOM::HTMLLegendElement* HTMLLegendElement(const DOM::HTMLLegendElement&)
        x_DOM__HTMLLegendElement* xret = new x_DOM__HTMLLegendElement(*(const DOM::HTMLLegendElement*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_DOM__HTMLLegendElement(const DOM::HTMLLegendElement& x1) : HTMLLegendElement(x1) {}
    static void x_3(Smoke::Stack x) {
        // DOM::HTMLLegendElement* HTMLLegendElement(const DOM::Node&)
        x_DOM__HTMLLegendElement* xret = new x_DOM__HTMLLegendElement(*(const DOM::Node*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_DOM__HTMLLegendElement(const DOM::Node& x1) : HTMLLegendElement(x1) {}
    void x_4(Smoke::Stack x) {
        // DOM::HTMLLegendElement& operator=(const DOM::HTMLLegendElement&)
        DOM::HTMLLegendElement& xret = this->DOM::HTMLLegendElement::operator=(*(const DOM::HTMLLegendElement*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_5(Smoke::Stack x) {
        // DOM::HTMLLegendElement& operator=(const DOM::Node&)
        DOM::HTMLLegendElement& xret = this->DOM::HTMLLegendElement::operator=(*(const DOM::Node*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_6(Smoke::Stack x) {
        // DOM::HTMLFormElement form() const
        DOM::HTMLFormElement xret = ((const x_DOM__HTMLLegendElement*)this)->DOM::HTMLLegendElement::form();
        x[0].s_class = (void*)new DOM::HTMLFormElement(xret);
    }
    void x_7(Smoke::Stack x) {
        // DOM::DOMString accessKey() const
        DOM::DOMString xret = ((const x_DOM__HTMLLegendElement*)this)->DOM::HTMLLegendElement::accessKey();
        x[0].s_class = (void*)new DOM::DOMString(xret);
    }
    void x_8(Smoke::Stack x) {
        // void setAccessKey(const DOM::DOMString&)
        this->DOM::HTMLLegendElement::setAccessKey(*(const DOM::DOMString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_9(Smoke::Stack x) {
        // DOM::DOMString align() const
        DOM::DOMString xret = ((const x_DOM__HTMLLegendElement*)this)->DOM::HTMLLegendElement::align();
        x[0].s_class = (void*)new DOM::DOMString(xret);
    }
    void x_10(Smoke::Stack x) {
        // void setAlign(const DOM::DOMString&)
        this->DOM::HTMLLegendElement::setAlign(*(const DOM::DOMString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    ~x_DOM__HTMLLegendElement() { this->_binding->deleted(71, (void*)this); }
};
void xcall_DOM__HTMLLegendElement(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_DOM__HTMLLegendElement *xself = (x_DOM__HTMLLegendElement*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_DOM__HTMLLegendElement::x_1(args);	break;
        case 2: x_DOM__HTMLLegendElement::x_2(args);	break;
        case 3: x_DOM__HTMLLegendElement::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: delete (DOM::HTMLLegendElement*)xself;	break;
    }
}
class x_DOM__HTMLLinkElement : public DOM::HTMLLinkElement, public __internal_SmokeClass {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    static void x_1(Smoke::Stack x) {
        // DOM::HTMLLinkElement* HTMLLinkElement()
        x_DOM__HTMLLinkElement* xret = new x_DOM__HTMLLinkElement();
        x[0].s_class = (void*)xret;
    }
    explicit x_DOM__HTMLLinkElement() : HTMLLinkElement() {}
    static void x_2(Smoke::Stack x) {
        // DOM::HTMLLinkElement* HTMLLinkElement(const DOM::HTMLLinkElement&)
        x_DOM__HTMLLinkElement* xret = new x_DOM__HTMLLinkElement(*(const DOM::HTMLLinkElement*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_DOM__HTMLLinkElement(const DOM::HTMLLinkElement& x1) : HTMLLinkElement(x1) {}
    static void x_3(Smoke::Stack x) {
        // DOM::HTMLLinkElement* HTMLLinkElement(const DOM::Node&)
        x_DOM__HTMLLinkElement* xret = new x_DOM__HTMLLinkElement(*(const DOM::Node*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_DOM__HTMLLinkElement(const DOM::Node& x1) : HTMLLinkElement(x1) {}
    void x_4(Smoke::Stack x) {
        // DOM::HTMLLinkElement& operator=(const DOM::HTMLLinkElement&)
        DOM::HTMLLinkElement& xret = this->DOM::HTMLLinkElement::operator=(*(const DOM::HTMLLinkElement*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_5(Smoke::Stack x) {
        // DOM::HTMLLinkElement& operator=(const DOM::Node&)
        DOM::HTMLLinkElement& xret = this->DOM::HTMLLinkElement::operator=(*(const DOM::Node*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_6(Smoke::Stack x) {
        // bool disabled() const
        bool xret = ((const x_DOM__HTMLLinkElement*)this)->DOM::HTMLLinkElement::disabled();
        x[0].s_bool = xret;
    }
    void x_7(Smoke::Stack x) {
        // void setDisabled(bool)
        this->DOM::HTMLLinkElement::setDisabled((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_8(Smoke::Stack x) {
        // DOM::DOMString charset() const
        DOM::DOMString xret = ((const x_DOM__HTMLLinkElement*)this)->DOM::HTMLLinkElement::charset();
        x[0].s_class = (void*)new DOM::DOMString(xret);
    }
    void x_9(Smoke::Stack x) {
        // void setCharset(const DOM::DOMString&)
        this->DOM::HTMLLinkElement::setCharset(*(const DOM::DOMString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // DOM::DOMString href() const
        DOM::DOMString xret = ((const x_DOM__HTMLLinkElement*)this)->DOM::HTMLLinkElement::href();
        x[0].s_class = (void*)new DOM::DOMString(xret);
    }
    void x_11(Smoke::Stack x) {
        // void setHref(const DOM::DOMString&)
        this->DOM::HTMLLinkElement::setHref(*(const DOM::DOMString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // DOM::DOMString hreflang() const
        DOM::DOMString xret = ((const x_DOM__HTMLLinkElement*)this)->DOM::HTMLLinkElement::hreflang();
        x[0].s_class = (void*)new DOM::DOMString(xret);
    }
    void x_13(Smoke::Stack x) {
        // void setHreflang(const DOM::DOMString&)
        this->DOM::HTMLLinkElement::setHreflang(*(const DOM::DOMString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // DOM::DOMString media() const
        DOM::DOMString xret = ((const x_DOM__HTMLLinkElement*)this)->DOM::HTMLLinkElement::media();
        x[0].s_class = (void*)new DOM::DOMString(xret);
    }
    void x_15(Smoke::Stack x) {
        // void setMedia(const DOM::DOMString&)
        this->DOM::HTMLLinkElement::setMedia(*(const DOM::DOMString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_16(Smoke::Stack x) {
        // DOM::DOMString rel() const
        DOM::DOMString xret = ((const x_DOM__HTMLLinkElement*)this)->DOM::HTMLLinkElement::rel();
        x[0].s_class = (void*)new DOM::DOMString(xret);
    }
    void x_17(Smoke::Stack x) {
        // void setRel(const DOM::DOMString&)
        this->DOM::HTMLLinkElement::setRel(*(const DOM::DOMString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_18(Smoke::Stack x) {
        // DOM::DOMString rev() const
        DOM::DOMString xret = ((const x_DOM__HTMLLinkElement*)this)->DOM::HTMLLinkElement::rev();
        x[0].s_class = (void*)new DOM::DOMString(xret);
    }
    void x_19(Smoke::Stack x) {
        // void setRev(const DOM::DOMString&)
        this->DOM::HTMLLinkElement::setRev(*(const DOM::DOMString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_20(Smoke::Stack x) {
        // DOM::DOMString target() const
        DOM::DOMString xret = ((const x_DOM__HTMLLinkElement*)this)->DOM::HTMLLinkElement::target();
        x[0].s_class = (void*)new DOM::DOMString(xret);
    }
    void x_21(Smoke::Stack x) {
        // void setTarget(const DOM::DOMString&)
        this->DOM::HTMLLinkElement::setTarget(*(const DOM::DOMString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_22(Smoke::Stack x) {
        // DOM::DOMString type() const
        DOM::DOMString xret = ((const x_DOM__HTMLLinkElement*)this)->DOM::HTMLLinkElement::type();
        x[0].s_class = (void*)new DOM::DOMString(xret);
    }
    void x_23(Smoke::Stack x) {
        // void setType(const DOM::DOMString&)
        this->DOM::HTMLLinkElement::setType(*(const DOM::DOMString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_24(Smoke::Stack x) {
        // DOM::StyleSheet sheet() const
        DOM::StyleSheet xret = ((const x_DOM__HTMLLinkElement*)this)->DOM::HTMLLinkElement::sheet();
        x[0].s_class = (void*)new DOM::StyleSheet(xret);
    }
    ~x_DOM__HTMLLinkElement() { this->_binding->deleted(72, (void*)this); }
};
void xcall_DOM__HTMLLinkElement(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_DOM__HTMLLinkElement *xself = (x_DOM__HTMLLinkElement*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_DOM__HTMLLinkElement::x_1(args);	break;
        case 2: x_DOM__HTMLLinkElement::x_2(args);	break;
        case 3: x_DOM__HTMLLinkElement::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: xself->x_22(args);	break;
        case 23: xself->x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: delete (DOM::HTMLLinkElement*)xself;	break;
    }
}
class x_DOM__HTMLMapElement : public DOM::HTMLMapElement, public __internal_SmokeClass {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    static void x_1(Smoke::Stack x) {
        // DOM::HTMLMapElement* HTMLMapElement()
        x_DOM__HTMLMapElement* xret = new x_DOM__HTMLMapElement();
        x[0].s_class = (void*)xret;
    }
    explicit x_DOM__HTMLMapElement() : HTMLMapElement() {}
    static void x_2(Smoke::Stack x) {
        // DOM::HTMLMapElement* HTMLMapElement(const DOM::HTMLMapElement&)
        x_DOM__HTMLMapElement* xret = new x_DOM__HTMLMapElement(*(const DOM::HTMLMapElement*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_DOM__HTMLMapElement(const DOM::HTMLMapElement& x1) : HTMLMapElement(x1) {}
    static void x_3(Smoke::Stack x) {
        // DOM::HTMLMapElement* HTMLMapElement(const DOM::Node&)
        x_DOM__HTMLMapElement* xret = new x_DOM__HTMLMapElement(*(const DOM::Node*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_DOM__HTMLMapElement(const DOM::Node& x1) : HTMLMapElement(x1) {}
    void x_4(Smoke::Stack x) {
        // DOM::HTMLMapElement& operator=(const DOM::HTMLMapElement&)
        DOM::HTMLMapElement& xret = this->DOM::HTMLMapElement::operator=(*(const DOM::HTMLMapElement*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_5(Smoke::Stack x) {
        // DOM::HTMLMapElement& operator=(const DOM::Node&)
        DOM::HTMLMapElement& xret = this->DOM::HTMLMapElement::operator=(*(const DOM::Node*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_6(Smoke::Stack x) {
        // DOM::HTMLCollection areas() const
        DOM::HTMLCollection xret = ((const x_DOM__HTMLMapElement*)this)->DOM::HTMLMapElement::areas();
        x[0].s_class = (void*)new DOM::HTMLCollection(xret);
    }
    void x_7(Smoke::Stack x) {
        // DOM::DOMString name() const
        DOM::DOMString xret = ((const x_DOM__HTMLMapElement*)this)->DOM::HTMLMapElement::name();
        x[0].s_class = (void*)new DOM::DOMString(xret);
    }
    void x_8(Smoke::Stack x) {
        // void setName(const DOM::DOMString&)
        this->DOM::HTMLMapElement::setName(*(const DOM::DOMString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    ~x_DOM__HTMLMapElement() { this->_binding->deleted(73, (void*)this); }
};
void xcall_DOM__HTMLMapElement(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_DOM__HTMLMapElement *xself = (x_DOM__HTMLMapElement*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_DOM__HTMLMapElement::x_1(args);	break;
        case 2: x_DOM__HTMLMapElement::x_2(args);	break;
        case 3: x_DOM__HTMLMapElement::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: delete (DOM::HTMLMapElement*)xself;	break;
    }
}
class x_DOM__HTMLMenuElement : public DOM::HTMLMenuElement, public __internal_SmokeClass {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    static void x_1(Smoke::Stack x) {
        // DOM::HTMLMenuElement* HTMLMenuElement()
        x_DOM__HTMLMenuElement* xret = new x_DOM__HTMLMenuElement();
        x[0].s_class = (void*)xret;
    }
    explicit x_DOM__HTMLMenuElement() : HTMLMenuElement() {}
    static void x_2(Smoke::Stack x) {
        // DOM::HTMLMenuElement* HTMLMenuElement(const DOM::HTMLMenuElement&)
        x_DOM__HTMLMenuElement* xret = new x_DOM__HTMLMenuElement(*(const DOM::HTMLMenuElement*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_DOM__HTMLMenuElement(const DOM::HTMLMenuElement& x1) : HTMLMenuElement(x1) {}
    static void x_3(Smoke::Stack x) {
        // DOM::HTMLMenuElement* HTMLMenuElement(const DOM::Node&)
        x_DOM__HTMLMenuElement* xret = new x_DOM__HTMLMenuElement(*(const DOM::Node*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_DOM__HTMLMenuElement(const DOM::Node& x1) : HTMLMenuElement(x1) {}
    void x_4(Smoke::Stack x) {
        // DOM::HTMLMenuElement& operator=(const DOM::HTMLMenuElement&)
        DOM::HTMLMenuElement& xret = this->DOM::HTMLMenuElement::operator=(*(const DOM::HTMLMenuElement*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_5(Smoke::Stack x) {
        // DOM::HTMLMenuElement& operator=(const DOM::Node&)
        DOM::HTMLMenuElement& xret = this->DOM::HTMLMenuElement::operator=(*(const DOM::Node*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_6(Smoke::Stack x) {
        // bool compact() const
        bool xret = ((const x_DOM__HTMLMenuElement*)this)->DOM::HTMLMenuElement::compact();
        x[0].s_bool = xret;
    }
    void x_7(Smoke::Stack x) {
        // void setCompact(bool)
        this->DOM::HTMLMenuElement::setCompact((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    ~x_DOM__HTMLMenuElement() { this->_binding->deleted(74, (void*)this); }
};
void xcall_DOM__HTMLMenuElement(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_DOM__HTMLMenuElement *xself = (x_DOM__HTMLMenuElement*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_DOM__HTMLMenuElement::x_1(args);	break;
        case 2: x_DOM__HTMLMenuElement::x_2(args);	break;
        case 3: x_DOM__HTMLMenuElement::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: delete (DOM::HTMLMenuElement*)xself;	break;
    }
}

}
