various adaptions