Add: extra functionalities, more flexible window