| Index: Source/bindings/templates/interface.cpp | 
| diff --git a/Source/bindings/templates/interface.cpp b/Source/bindings/templates/interface.cpp | 
| index 8ef9fedc1222c8b284301bfb408794cca1f874e6..fe1440aa6e4fd9a49ecbcf2b0973d9994c8b09da 100644 | 
| --- a/Source/bindings/templates/interface.cpp | 
| +++ b/Source/bindings/templates/interface.cpp | 
| @@ -463,6 +463,24 @@ ActiveDOMObject* {{v8_class}}::toActiveDOMObject(v8::Handle<v8::Object> wrapper) | 
|  | 
|  | 
| {##############################################################################} | 
| +{% block wrap %} | 
| +{% if special_wrap_for %} | 
| +v8::Handle<v8::Object> wrap({{cpp_class}}* impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate) | 
| +{ | 
| +    ASSERT(impl); | 
| +    {% for special_wrap_interface in special_wrap_for %} | 
| +    if (impl->is{{special_wrap_interface}}()) | 
| +        return wrap(to{{special_wrap_interface}}(impl), creationContext, isolate); | 
| +    {% endfor %} | 
| +    v8::Handle<v8::Object> wrapper = {{v8_class}}::createWrapper(impl, creationContext, isolate); | 
| +    return wrapper; | 
| +} | 
| + | 
| +{% endif %} | 
| +{% endblock %} | 
| + | 
| + | 
| +{##############################################################################} | 
| {% block create_wrapper %} | 
| {% if not has_custom_to_v8 %} | 
| v8::Handle<v8::Object> {{v8_class}}::createWrapper(PassRefPtr<{{cpp_class}}> impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate) | 
|  |