pass in self
centralized focus. clean. simple. the react way