working on sample implementation