I am probably doing this all wrong, but it is working