better guardmany locking