adopt new lock model