major updates and fixes