moved implementation element methods