javascript: Umbrella pattern

By Anatoly Mironov