implemented element lock