Fixed not existent property
Fixed missed property and methods
Added type hinting
Fixed unused code
Fixed code duplication