modernize style
support super properties
merge
update docs