Add state preserving self-exec