impl: gain node