updated with lattest analysis