this part is definitely (one of) the problems