------------,------------, -~ ~~ o \