hook this up in a better way