Make Client and User extendable