updated result and added a somewhat better abstract