added status flags to prevent circular calls