added overloaded functions
made functions inline because of a linking error