implemente some more basises