@author aniwey
   |z.-+);
  -+|)='`%:
 })]`]}s)'.;
 -+{!%^;_\'".
%;=)h;-+--(-]
