working on site and manual: function