added slightly more prototyping.