updated BasicObject to ProxyObject