Working version.
Working changes.