coding done for proof-of-concept