adding weak support for wrapped elements
add superclass support