separated stuff further - no idea if this runs atm