better version of backend part III