more progress on backend