based on genertor-angular