replaced smart pointers with dummy pointers