Protocol should hang onto shared pointer for protection but always use underlying raw pointer Reviewed By: aditya