1. added receiver functionality