server works, new functions