ender's client-side code