adressing #1 and #4