re-typesetting, use landscape, add more function