add backward cocompatible code