generated lock