core functionality finished;