finally changed repo to class-only repo due to too much work