work in progress, func in each classes