static O withDBLock(O r) { lock db_mainConcepts().lock; ret callF(r); } static A withDBLock(F0 r) { ret (A) withDBLock((O) r); } static O withDBLock(Concepts concepts, O r) { lock concepts.lock; ret callF(r); } static A withDBLock(Concepts concepts, F0 r) { ret (A) withDBLock(concepts, (O) r); } static A withDBLock(Concept concept, IF0 r) { ret (A) withDBLock(concept._concepts, r); }