_buildFreeReferrersSubquery(postId, options) {
        const knex = this.knex;

        // Simpler approach mirroring _buildFreeMembersSubquery
        let subquery = knex('members_created_events as mce')
            .select('mce.referrer_source as source')
            .countDistinct('mce.member_id as free_members')
            .leftJoin('members_subscription_created_events as msce', function () {
                this.on('mce.member_id', '=', 'msce.member_id')
                    .andOn('mce.attribution_id', '=', 'msce.attribution_id') // Conversion must be for the SAME post
                    .andOn('mce.referrer_source', '=', 'msce.referrer_source') // And the SAME referrer
                    .andOnVal('msce.attribution_type', '=', 'post');
            })
            .where('mce.attribution_id', postId)
            .where('mce.attribution_type', 'post')
            .whereNull('msce.id') // Keep only signups where no matching paid conversion (same post/referrer) exists
            .groupBy('mce.referrer_source');

        this._applyDateFilter(subquery, options, 'mce.created_at'); // Filter based on signup time
        return subquery;
    }
Build subquery for free members count per referrer for a specific post.
(Signed up via Post/Referrer, Did NOT convert via SAME Post/Referrer)
@private
@param {string} postId
@param {StatsServiceOptions} options
@returns {import('knex').Knex.QueryBuilder}