use direct signals
remove delegates methods
comment signals and separate them