use Ref everywhere