added abstract, fixed some stuff