added abstract + some fixes