updated with more scenarios
initial commit