Expand +



BI Upgrade Q&A: Steps, best practices and tips for moving to SAP BusinessObjects BI 4.1

Chat with Dr. Berg and the ComeritLabs team

by Dr. Berg

December 17, 2013

BI 2014 speaker Dr. Bjarne Berg and the ComeritLabs team took reader questions and shared tips based on their own recent BI 4.1 upgrade experiences. This Q&A was moderated by BI 2014 conference producer Bridget Kotelly.

Bridget Kotelly: Berg, welcome back and thanks for joining us today – and for bringing your colleagues at ComeritLabs with you! While I moderate the chat roll, Berg and the team -- Rob Frye, Michael Barker, Brandon Harwood, Brandon Lucaciu, Michael Basta, Michael Vavlitis -- will join us to answer your questions. Welcome to you all!

Rob Frye, ComeritLabs: Before we get started on questions, we’re going to introduce our team at the labs. I’m Rob Frye, I’m the manager her at ComeritLabs. I’m joined by developers Brandon Harwood and Michael Barker.  We also have Michael Vavlitis, Brandon Lucaciu, and Michael Basta, the rest of our development team, standing by to answer any of your questions.

Dr. Berg: Welcome. We’ll be focusing on the BI 4.1 upgrade – there are a lot of new features and new tools.  We’ll take questions, and start by giving a little bit of background information.

We went through an upgrade the first time that 4.1 came out, in the first release, and we went through testing and training, and tried to find out what works and what does not work so well.

Then we through a second box - we have 4 production boxes at ComeritLabs – where we went methodically step by step on the upgrades, and that’s the stuff we’ll share today. So you can really get to know what’s involved in the mechanics of going through the upgrades.

Editor’s note: You can also see their demo on BI 4.1 implementations at (start at 3:35).

Dr. Berg: To summarize this presentation:

We encounter quite frequently companies who think they’re going to install, but all they have done is gone through some wizard and said “yes, yes, yes” and at the end of the process they haven’t thought about scaling and performance. We do a lot of rescue missions where performance tends to be very, very poor. And it winds up being very trivial settings and inappropriate configuration during installs.

So people suffering performance issues in the 3.1 platform or even in the 4.0 performance gains, spend some time; don’t just do a willy-nilly install. Take a moment and spend some time and think about how to deploy this, because you can eke out a lot of performance from a 4.0 box by doing it properly.

Let’s take a look at some of the questions we are seeing in the chat:

Comment From Ghassan 

I have BI4.0. What's the best path to upgrade to BI4.1 SP2?

Brandon Harwood: The best upgrade path to BI4 sp2 - it’s really quite simple. SAP did a good job with this, I feel like, in enabling direct upgrade to 4.1, especially Service Pack 2, there’s a full install available for that. And you can directly upgrade to 4.1 service pack 2 from BusinessObjects installations as old as XI R2 service pack 2. So there’s a large breadth of installed base most likely that will be able to install directly to 4.1 service pack 2.

Comment From Syed Rahman:
If possible, I would like to hear about connectivity with Essbase for Reporting?

Dr. Berg: One of the challenges with that, as you know, is that the MDX for the database, so it’s basically a MOLAP.

There are some interfaces but you cannot connect live just using JDBC or ODBC connections, so most likely what I would like to do in that case is probably using something like query as a web service, or releasing native functionality. Like if you’re running Hyperion running on top of Essbase, I would expose those queries as an ODBC or as a query as a web service and then pick those up. But it winds up being the same thing when you connect to anything that’s indexed, like an OLAP cube or PowerPlay.

Comment From Borges:
How to upgrade directly from 3.1 XI Webi and Crystal 2008 to 4.1 in a suitable mix for cost vs.   benefits? Automated migration applications? For performance matters, maintain MDX connections (BW) or change? Thanks.

Dr. Berg: That’s a lot of questions. I think we’ll start at maintaining the MDX connections.

There’s a little bit of rework if you’re going to change over to the BICS connectors, so it depends on how many objects and how much work you’re going to commit to.  But in general I would avoid the MDX.

MDX has an overhead and it’s not an SAP thing, it’s basically the interface that you’re using that creates metatags on the front and back end that are transmitted between BW and the BOBJ server, and then this tag has to be removed by the BOBJ server.  

We see anything from a 20-40% slowdown in the query response time. So MDX connections back to BW is absolutely not the preferred method. But it does require some extra work and it does depend on how much work you’re willing to do.

Comment From Borges
How can we upgrade directly from 3.1 XI Webi and Crystal 2008 to 4.1 in a suitable mix for cost vs. benefits?

Brandon Harwood: Especially for Webi, and I’m sure Crystal is the same way, there is a direct upgrade path, and nothing any more complicated than upgrading from 4.0 to 4.1 if you’re using the full installation files. It should be a direct upgrade.

Rob Frye: In fact we even did a test on the new platform. We had not installed the new version of Crystal Reports yet but when we clicked on the link in the launch pad it prompted you to install that, and it went ahead and launched the installer for you. So they did a really good job of making this an easy upgrade from the previous versions.

Comment From Guest
Are there particular 'types' of BI objects that we need to pay special attention to through this upgrade?

Dr. Berg: I think the one we did run into was basically in the BI Workspace in 4.1, we were unable for first release to deploy Analysis.  So if you had a BI Workspace that you built on 4.0 and you were deploying it into 4.1, we were unable to get the Analysis. 

Rob Frye: As of the latest version, they have not fixed that problem where Analysis doesn’t show up in Workspace. It does still work if you just open an Analysis report by itself. They are aware of the problem, and they are planning to address it, but it’s not been fixed as of yet.

Dr. Berg: There are some cool features, especially for Webi users. You will appreciate the fact that you can customize - so if you open 4.1 in the Webi version, you can customize the interface. So if you have some power users who are really not that technical, you can start turning things off and decide exactly what features you want to deploy on the interface. That is a really cool feature. You’ll see a lot of performance changes  – picking up variables and prompts from BW, those are 60-70% faster. We also see that when opening things when Java is called, in 3.1 it’s slow, in 4.1 it’s dramatically faster, 60-70% faster. So there’s a lot of small stuff.

If you want to read up in the individual tools, we’ve written a whole series on SAPinsider Online. You can see for each tool --  Analysis, Webi, Crystal, Dashboards – we’ve gone through what’s new in each individual tool. 

Comment From Guest:
What are the most challenging tasks during implementation?

Michael Barker: Time management -- setting the time necessary to properly back up the system, perform a cold backup of your CMS database,  to ensure that if something does not go as planned, you have a file to restore your database. That’s part of SAP’s best practices.

The installation in our cases took 2-3 hours on our systems at the lab here. If you’re coming from an older system, you’ll have to go through the UMT process for upgrading and migrating the reports over from the legacy system over to the 4.1 environment. And in our research the estimated time to 500,000 objects to be migrated over was estimated at 36 hours. So time management, and allocating the time to properly implement this upgrade in a large environment is probably the most challenging aspect of this upgrade.

Brandon Harwood: We mentioned the incremental upgrade and the deployment of legacy objects to your new environment.  That helps cut down on that 30 hour chunk if you’re migrating all at once. Something to take into consideration -- if you have a lot of objects in your previous system that you’re upgrading from, it’s probably best to do this incrementally, piece by piece, so you can minimize the time that you have to spend in one giant load, and minimize the risk of having a long, long transfer like that error, and then have to start over, and have errors from that as well.

Rob Frye: And you also have the benefit of scale with an incremental upgrade. You don’t have every report you ever did having a problem all at once. You can take it in small pieces, so you can take that piece make it’s sure it’s running and then you take the next batch of reports.

Comment from Guest: With 4.1 we will be able to get Deski reports on to the BI4 platform. What needs to be done for that, and what impact will this have for users?

Dr. Berg: As you notice, SAP has built more and more of Deski functionality into the Webi platform.  SAP Deski is a fully supported version going forward, but of course it is not the future directions. It will be Webi that will take over more and more.

Michael Vavlitis: The users can use Deski when connected to BI 4.1 in the similar way as they can in Deski 3.1.  Deski cannot be consumed in the BI Launchpad, though.

Brandon Harwood: You’ll basically be limited to running Deski the same way as you did in 3.1.

Comment From Bill Schneider 

What is the best migration approach or future direction for reports written against ECC 6.0 ERP or Linux files?

Berg: It depends a little bit on how you build your reports.

Rob Frye: I know we have one client running on HANA and reporting directly on top of it, and not going through a business warehouse. It’s a work in progress, because there are some challenges when you implement it that way. I’m going to give you the consulting answer, which is “it depends.” It depends on how your reports are written and exactly what you’re trying to do.

Comment From Guest:
BI based on Unix/Linux platform has a big lack on documentation. What do we have to consider before evaluating a Unix/Linux implementation?

Michael Basta: Yes, it is true that there is pretty sparse documentation for Linux. One thing that is new in 4.1 is that Mobile Server is now supported for Unix. Note that only 64 bit operations are supported. SAP has published patch level requirements for the upgrade in the product availability matrix (PAM).

This is something that we’ll be addressing in a blog in the upcoming month and it’s also available on SAP’s website. You’ll definitely want to check that out.

Comment From Phil C.

Which new BI4.1 functionality should I focus in on exploiting first?

Rob Frye: It depends on what your goals are and how you’re planning on leveraging the BI tools at your disposal. If you’re looking to do a lot of dynamic reporting and what if analysis, then you’ll want to use a tool like Dashboards.

If you’re planning on building a lot of customized stuff and have strong IT people with  good coding background, Design Studio they just rolled out the 1.2 version that is a lot more stable and we’ll probably be publishing some blogs on that in the next month or two.

Dr. Berg: It comes back not just to functionality and also to the user community. If you’re coming from a BEx environment, it’s going to be Analysis the OLAP version or the Analysis Office version. If you have executives, you probably want to build something more graphical for them. In this case, it actually does depend – it’s not just punting on the question!

Comment From Jayme: 

We are at 4.0 SP4 FP0 for our BusinessObjects platform. My understanding is that we should not have to do a new install of 4.1. We can just update our current server and client tools using the 4.1 sp 02 patch. Is that the case? We don't want to invest in new servers at this point as we just upgraded to 4.0 from 3.1 earlier in the year.

Brandon Harwood: Yes, that is absolutely the case. You can directly upgrade to 4 .1 service pack 2 from your 4.0 installation. It shouldn’t require anything additional in terms of conversion, because you can use the Lifecycle Manager. If you do a side-by-side installation, you can use Lifecycle Manager to move your files over to the 4.1 system.

Or you update everything directly on top of your 4.0 system, and that’s where our recommendation to back up everything comes into play.

If you go with either of those routes, it should be a fairly painless installation.

Just remember if you’re going to do a 4.1 installation on top of your existing 4.0 installation, please backup everything: CMS database, and possibly export a VIAR file of your core objects, so you have some archive backup of those objects as well.

Comment From Jordi:
I would like to know how SAP will address the ways of working with OLAP and relational models in Business Objects -- as well as how the old Designer function of linking universes is going to be solved in the new IDT, as far as of now (in 4.0) it is not supported. Thanks in advance.

Dr. Berg: There seem to be two questions: How would we work with OLAP? And how would we work with relational models?

It depends on the source system. For example, with an OLAP system, BW is by nature a relational OLAP. So that’s all resolved through BEx and  BICS connectors.

If you are working with OLAP solutions like SaaS, OLAP cubes, PowerPlay or Essbase, you have to rely on the queries provided. And for most companies that would mean coming to an interface that could activate objects or ODBC, or going to query as a web service.  So you have to look at the integration of how you connect back to your source.  

If it’s OLAP for BW, of course it’s Analysis that you’re going to be working on this one.

With the relational models, it’s pretty straightforward. There’s Java-based connectivity, ODBC drivers, any connections that are available, BICS connectors, and you have MDX based connections. It’s really a wide open back end for the system.

Now the other question was, has the old designer tools of linking universes been solved in the new IDT? There are multisource universes.

Brandon Harwood:  We looked into this as well. I haven’t looked at the newest IDT to look at this specific new feature. I haven’t discovered the functionality that I think they’re describing in the 4.1 version yet. 

Dr. Berg: But in this question, it’s worth it, Jordy, to take a look at multi-source universes if that’s what the question was pertaining to.

Comment From Rafael:
Can I access BW from Lumira without SAP HANA? I make a universe, UNV connected to BW, but I do not see it in Lumira.

Dr. Berg: Can you access BW from Lumira? Yes you can, absolutely.

Go to the query provider on the event tab on the BEX query, and you make it available, it’s a little check flag, and you can pick it up using the traditional OLAP universes or MDX connections. The stuff that we have done on Lumira is all through HANA, so we haven’t played much with the direct access to BW.

Brandon Harwood: We were dealing with a similar situation with this earlier in the week. There should be universe connectivity within Lumira.  We were connecting using the 4.0 version of the universe, the UNX universe. So if you’re not seeing your universe in Lumira, it may be the case that you need to check on whether your universe is a UNV or UNX version, just to confirm. You should be able to connect to the current version of Lumira if the current version of the universe is set up.

Comment From Murali Loganathan:
Hi Team, Currently we are in BI 4.0 SP6 platform and would like to upgrade to BI 4.1

1. Our Current BO APS server has been split into 7 APS category as per the best practices. Will this get affected during upgrade?

2. What are benefits when you upgrade? Thanks and looking forward you feedback on above.

Rob Frye: We covered this during the Powerpoint at the beginning. [See (start at 3:35)]

The good news is that you can use the slider bar on the sizing estimator to pick the best configuration. And the template we pulled up will have the answer on what the best configuration is for you.  You can allocate that with the system configuration wizard.  Or you can also use the traditional approach – in other words, you don’t have to use the system configuration wizard; you can use the CMC and do it the way you used to do it. I’d recommend taking a snapshot of what you have if you’re satisfied with the performance.

You may also want to look into using the template and sizing estimator to make sure that that the way you have it set up is the way SAP recommends it.

Brandon Harwood: If you’ve already have seven APSs set up, as per SAP’s best practices, if you feel like your APS breakdown is good enough and you like that, you can completely bypass the configuration wizard and just directly upgrade.

And it should keep the current APS structure that you have and not rearrange and change all your servers. Maybe the worst thing it would do is rename adaptive processing servers down to APS in 4.1. So it shouldn’t rearrange your structure you have now as far as servers go.  

Dr. Berg: The other question is about BO explorer – there shouldn’t be any impact to those.

Comment From Murali Loganathan:  
We have Design Studio 1.2 and SAP BO Explorer installed in the same BI 4.0 server. Will these tools get affected when we upgrade? if yes, then is there any patch or re-installation required?

Brandon Lacacio: If you are deploying Design Studio applications to the Launchpad, you’ll need to install the BI 4.1 Add On that comes with the Design Studio version 1.2 download , and that will allow you to deploy any application to the new 4.1 platform.

The add-on comes with the version 1.2 download of Design Studio, it’s called the BIP Client add-on for Design Studio 1.2.

Comment From Tony Butcher

We are scoping a universe upgrade from 3.1 to 4.1 and would like to check with the experts to determine if there is an "average" amount of time (man hours) that could be estimated to allocate for migrating each report to 4.1. The assumption is that an experienced universe resource would be doing the migration. We need to migrate more reports than initially planned.

Dr. Berg: How many hours do you think it will take, report by report?

Brandon Harwood: This really comes down to the complexity of the reports you’ll be converting. If it’s just a straight universe upgrade from a 3.1 UNV universe to 4.x UNX universe, and the reports that are based off of those, it’s tough to say without diving into the report complexity or the tool that’s actually being used.

For example, off the top of my head, if you’re building a Webi report in 4.1 off an updated universe ad you have a medium complexity Webi report, I wouldn’t expect that to take the same amount of time as developing a new report, since you’re just updating the connection, basically. Without any custom work, where variables may be involved, it may take an hour or two for a less complex report.

For reports in Webi, if you have complex variables that will need to be reestablished based on the new connection, it could take any amount of time based on the complexity of the report.

Comment From Zaheer:
I am currently on BI 7.04, and want to upgrade to BO 4.1. What are the challenges?

Brandon Harwood: As long as the current system you’re updating from is XI R2 service pack 2 or newer, it should be a direct upgrade as long as you meet those criteria. And if it’s pre-XI R2, you’ll have to update to XI R2 service pack 2 and then update to 4.x.

Rob Frye: And if you’re updating from a system that is several versions prior to the one you’re moving to, make sure you do the full cold backup we mentioned earlier. It looks like this release has been fairly trouble free, but it’s always a good idea to keep a backup.

Dr. Berg: Having done this for a couple clients, and also done several environments of our own production boxes, this has been a pretty smooth upgrade. Though there have been a few gotchas and small stuff that we mentioned today, this has been a pretty smooth and straightforward and I think SAP has done a very good job on this.

Comment From Nick Zeigler:
For customers still on UNV universes against SAP BW, how much of a performance increase will the new 64-bit connection server offer?

Berg: This really comes down to hardware.

There’s a little bit of gain in the bus, when we basically merge two 32 bit blocks into 64 bit block, you can transfer in the 64 bit block, for twice as much, but the cost is basically assembling that.  People also often get more hardware, but just in the same connection, but I would guess that we have a benchmark and I would guess it’s maybe 10% or so. It’s not a dramatic increase unless you have hardware. So if all of the sudden you upgrade your hardware and change your RAM speed and change the processing speed on the CPs as well, that’s where you really see the real benefits gains. Not just changing the connection but changing the hardware.

Comment From Guest:

With regard to BOBJ 4.1 security, are there any new features that we can benefit from? From an implementation standpoint, we had several issues when we had upgraded from BOBJ 4.0 SP2 to SP4.

Brandon Harwood:  Without knowing what issues they encountered before, it would be hard to address them specifically.

But it also comes down to what security authentication type you’re going to use for 4.1.

I do know that in 4.1 they’ve improved the ability to import and actually configure and create new Windows Active Directory names and accounts, so there’s a little bit tighter integration with Active Directory.

As far as the core security features of BusinessObjects, I believe that’s largely unchanged from 4.0. You still have the same ability to do user groups and roles, and assign tools and access to reports based on those. So I believe the majority of improvements for security will come with tighter integration to outside authentication sources via Active Directory.

And I believe they also included a way to single sign-on via HANA credentials as well.

So if you’re using a HANA system, there should be a way to, using SAML (security assertion markup language) uses that to single sign on via HANA credentials as well now. 

Rob Frye: Another benefit in the new 4.1 rollout is that a lot of your tools now have the ability to customize the user interface, so you can actually turn off functions like export, so they can’t export Excel format, which will protect your data from being emailed out to someone  you don’t want to have access to it.

Basically they made the interface more customizable, especially in Webi and Dashboard designer also made significant changes to that. So those are some other benefits, where the administrators can really customize the interface and tailor it to what he wants his users to be able do.

Comment From Raghav:
Hi Dr. Berg, I have a few questions from an upgrade standpoint. A few months back we upgraded from BOBJ 4.0 SP2 to SP4 and it broke several of our reports and none of the services ran properly. We were recommended to perform a fresh install to resolve all the issues because of the upgrade and we had to set up a new environment, install BOBJ 4.0 SP4, and migrate all reports from our SP2 environment.

Have you tried upgrading from SP4 to 4.1, and are there any recommendations you can provide in this regard? Thanks for your time! :)

Berg: A good question here from Raghav about going from SP2 to SP4. I do have to admit that this was a bumpy upgrade -- you are recommended to do a fresh install, then migrate all the content over. And they ask if this will be the case in 4.1.

The answer is that this is NOT the case in 4.1 – it’s not going to break all your reports and stop working. Instead of going to SP2 to SP4, you might seriously consider going straight to a 4.1 upgrade.

Comment From Guest:
We have BI 4.0 SP6, but we have some bugs and SAP is suggesting an upgrade to SP8. My question is: Can I directly upgrade to 4.1 SP2 and all the issues will be fixed?

Rob Frye: Without knowing all the bugs you ran into it will be hard to give you an accurate answer. It appears that they did a lot of things right in the upgrade. It seems to be very smooth; they didn’t seem to break anything. Other than running Analysis in workspaces, it’s fairly minor because you can still run those reports outside of the workspace. But without knowing what those bugs are it’s going to be hard to give you an accurate answer.

Dr. Berg: I think the question is: Can I escape those bugs, skip sp8, but go straight to SP2? The simple answer is that you don’t have to go to sp8 and then to 4.1, you can skip directly to 4.1. But you’d want to understand those issues before you do the upgrade.  

Comment From Guest:
Currently we are on BO 4.0 SP5 with some issues with publications, saving as PDF if size is an issue. SAP is suggesting us to upgrade to SP8. Are all open defects with 4.0 covered in 4.1?

Dr. Berg: If you do go up, the new version includes all the previous fixes - the fixes in service pack 6 or 8. So if you’re going to 4.1, the fixes you’re looking for in SP8 are also covered in 4.1.

Comment From Raghav:
Does SAP Explorer on 4.1 have the ability to connect to a query or multiprovider via BICS? Currently we use a relational JCo connection and are experiencing performance issues when trying to retrieve a large data set for analysis. Thanks!

Dr. Berg: Yes you can absolutely using standard BICS delivery on top of a multiprovider, you’ll be just fine. If you want to see a really good demo live, you can see our demo of 1.2 billion rows running on top of BOBJ Explorer, in our blog on SAPinsider.  So there are not really any performance issues.

Comment From Guest:
Assuming you have upgraded to BOBJ 4.1, what is the recommended version of SAP NetWeaver to run alongside it?

Dr. Berg:  You can join me at the BI 2014 this spring, and I‘ll be showing step-by-step how to do the 7.4 upgrade. And technically you can run in 7.3 and 7.0 systems. I do prefer 7.0 to have SP1 or higher, and technically you can make it run with a 3.5 system, but I strongly recommend against that.  You lose some of the connectivity options. In my opinion 7.4 is very cool, but that’s a different question!      

Comment From Guest:
Apart from FM's, SAP queries and Infosets from ECC, can we use any other programs from ECC with 4.1? Any new features on the ability to create hierarchies on flat structures?

Dr. Berg: If you use a web service for connecting the data, yes, you’ll have some issues around getting the hierarchies back. But what most people don’t know is that BEx actually runs in ECC 6 service pack 5 and higher. You have BEx, and you can build a BEx query, then connect BEx into your BOBJ system and hierarchies are supported in those as well.  There are really no new features.

If you have flat structures, you have to find a way to set up a hierarchy.

One of the tricks I use is using a filter selector, specifically Xcelsius. The filter selector pretends it’s a hierarchy when you select three-level filter selectors, if you’re using Excel as an integrator. But no, there’s no magic bullets that resolves that problem.

Comment From Monica:

We are on 4.0 SP3, and would like to upgrade. Is doing upgrade by having parallel environments the general practice? Or for production systems, are the upgrades done in place? If we do this with a parallel environment, how can server names be set back to the original?

Brandon Harwood: The standard recommended way to do this would be parallel environments. That’s because you can go live-to-live: you can maintain your old live system functional at the same time you’re migrating to your new system. That way you don’t have any of the downtime associated with shutting down a production server to do a full migration on top of your old installation upgrade.

To go back and change the name, that may be something that can be done via the CMS configuration tools on your host systems, where BusinessObjects is installed. It should be in the same area where you control the ports that are associated with the server and the clusters that are associated with each server. So, if I had to venture a guess, it would be in the same area where you make all these other changes.

So after you finish this side-by-side transfer to the new environment, to maintain your naming structure --    and to avoid a lot of networking based stuff, based off the name of your server changing -- you should be able to adjust server settings on your CMS and change the name of the server.

Dr. Berg: Let’s get back to Monica on that on, get a specific answer and post it here.

Rob Frye: We do have a few questions left, but it looks like these are repeats of earlier questions. If for some reason we missed anything, you should be able to reach us at . If it’s something we can answer fairly quickly, we’ll shoot you an answer back. If not, we’ll see if we can find another solution for you.

Thanks for joining us today and we’ve enjoyed this chance to share our experiences with you. And you have a great day.

Bridget Kotelly:  Thanks to Dr. Berg, Rob Frye, Michael Barker, Brandon Harwood and everyone from ComeritLabs who joined us today!  Now that we’ve wrapped up the chat, I want to thank all of you who posted and followed the discussion as well! 

To review this chat, we’ll be posting the replay soon, and you can read the Q&A transcript here on the site in the next few days. We know the audio was at times difficult so we'll be sure to capture his answers in the transcript.  (Look for an email alert when the transcript is posted.)

Did you find this Q&A helpful? Get access to the latest updates and resources from SAPinsider with a free subscription.

Get the SAPinsider subscription now »»

An email has been sent to:

More from SAPinsider


Please log in to post a comment.


7/16/2017 8:48:28 AM

Hi All,I want to move 12 millions of objects from BO 3.1 to BI 4.1 SP6. I followed incremental process and just for 1,00,000 objects it'a taking 24 hrs. Requesting you to please suggest how to improve process and move more number of objects fast.