added functionality of icicle