every type bugs fixes here