    /** * @private * Adds hit testing methods to the Ext.draw.Surface. * Included by the Ext.draw.plugin.SpriteEvents. */Ext.define('Ext.draw.overrides.hittest.Surface', {    override: 'Ext.draw.Surface',     /**     * Performs a hit test on all sprites in the surface, returning the first matching one.     * @param {Array} point A two-item array containing x and y coordinates of the point     * in surface coordinate system.     * @param {Object} options Hit testing options.     * @return {Object} A hit result object that contains more information about what     * exactly was hit or null if nothing was hit.     * @member Ext.draw.Surface     */    hitTest: function (point, options) {        var me = this,            sprites = me.getItems(),            i, sprite, result;         options = options || Ext.draw.sprite.Sprite.defaultHitTestOptions;         for (i = sprites.length - 1; i >= 0; i--) {            sprite = sprites[i];            if (sprite.hitTest) {                result = sprite.hitTest(point, options);                if (result) {                    return result;                }            }        }        return null;    },     /**     * Performs a hit test on all sprites in the surface, returning the first matching one.     * Since hit testing is typically performed on mouse events, this convenience method     * converts event's page coordinates to surface coordinates before calling {@link #hitTest}.     * @param {Array} point An event object.     * @param {Object} options Hit testing options.     * @return {Object} A hit result object that contains more information about what     * exactly was hit or null if nothing was hit.     * @member Ext.draw.Surface     */    hitTestEvent: function (event, options) {        var xy = this.getEventXY(event);        return this.hitTest(xy, options);    }});