Add 'pre-requisite checking' to 'Add' function