Revised entire paper (tightened)