the initialized logic appears to be wrong... release/acquire pairs only