provided useful method