added cup factory