Rewritten from scratch and compatible with Genesis 2.0