found several classes at GitHub