still something weird with lock