added rect sharedptr and creator