Added a lot of features