added paramaterized input to main module
added demo for testing