added history functions