added public.hpp