started on base.cpp