heaven: modified functions