  } /* namespace js */  namespace JS {  template <typename T> template <typename S> inline Handle<T>::Handle(const Rooted<S> &root,                   typename mozilla::EnableIf<mozilla::IsConvertible<S, T>::value, int>::Type dummy) {     ptr = reinterpret_cast<const T *>(root.address()); }  template <typename T> template <typename S> inline Handle<T>::Handle(const PersistentRooted<S> &root,                   typename mozilla::EnableIf<mozilla::IsConvertible<S, T>::value, int>::Type dummy) {     ptr = reinterpret_cast<const T *>(root.address()); }  template <typename T> template <typename S> inline Handle<T>::Handle(