attempt to make adaptive layout