simplified but still unstable