Make this less complicated if you can