Better nameing and less magic.