add xblock constructor