Added adapter pattern.
Modified comments.