oh lord, this could get ugly fast....