updated to remove unnecessary stuff