changes from blshkv