add more proper attribution explaining implementation