Basic condition support! Mostly untested.