cabalized, improved readability, remade many things closer to canonical way