added opacity option