Added registration and splitted interfaces