def rpc_get_name_history_page(self, name, page, **con_info):
        """
        Get the list of history entries for a name or subdomain's history, paginated.
        Small pages correspond to later history (page = 0 is the page of last updates)
        Page size is 20 rows.
        Return {'status': True, 'history': [...]} on success
        Return {'error': ...} on error
        """
        if not check_name(name) and not check_subdomain(name):
            return {'error': 'invalid name', 'http_status': 400}

        if not check_count(page):
            return {'error': 'invalid page', 'http_status': 400}

        offset = page * 20
        count = (page + 1) * 20
        history_data = None

        if check_name(name):
            # on-chain name
            db = get_db_state(self.working_dir)
            history_data = db.get_name_history(name, offset, count, reverse=True)
            db.close()

        else:
            # off-chain name
            history_data = get_subdomain_history(name, offset=offset, count=count, json=True, reverse=True)

        if len(history_data) == 0:
            # name didn't exist 
            return {'error': 'Not found', 'http_status': 404}

        return self.success_response({'history': history_data})
Get the list of history entries for a name or subdomain's history, paginated.
        Small pages correspond to later history (page = 0 is the page of last updates)
        Page size is 20 rows.
        Return {'status': True, 'history': [...]} on success
        Return {'error': ...} on error