back-end part 1 done; almost finished