lock mechanism added