added bean implementation function